From 66d14c8838704d2cab18dcccff4a7d458f401e2c Mon Sep 17 00:00:00 2001
From: Sun Serega <sunserega2@gmail.com>
Date: Mon, 26 Aug 2024 15:46:55 +0200
Subject: [PATCH] adapt packing to PR CL#1215

---
 DataScraping/Reps/OpenCL-Docs                 |   2 +-
 DataScraping/XML/OpenCL/funcs.bin             | Bin 145667 -> 146014 bytes
 LastPack.log                                  |   8 +-
 Log/PullUpstream.log                          |   8 +-
 Modules.Packed/OpenCL.pas                     | 850 ++++++++++--------
 Packing/Descriptions/OpenCL.predoc            | 850 ++++++++++--------
 .../Func/OpenCL/cl_khr_command_buffer.dat     |  58 +-
 .../LowLvl/Fixers/Group/OpenCL/0Misc.dat      |   4 -
 .../OpenCL/Extension.Interface.template       | 812 +++++++++--------
 .../OpenCL/Log/All EnumToTypeBinding's.log    |   2 +-
 .../Template/LowLvl/OpenCL/Log/All Func's.log | 385 ++++----
 .../LowLvl/OpenCL/Log/All Group's.log         |   8 +-
 .../LowLvl/OpenCL/Log/All ObjPropList's.log   |  16 +-
 .../LowLvl/OpenCL/Types.Interface.template    |  38 +-
 14 files changed, 1695 insertions(+), 1346 deletions(-)

diff --git a/DataScraping/Reps/OpenCL-Docs b/DataScraping/Reps/OpenCL-Docs
index bfd9a606..c9169c9e 160000
--- a/DataScraping/Reps/OpenCL-Docs
+++ b/DataScraping/Reps/OpenCL-Docs
@@ -1 +1 @@
-Subproject commit bfd9a60641f1ae1df597ab429dfac527c209108d
+Subproject commit c9169c9ef07a7ae032d17457c592bebce63eff9f
diff --git a/DataScraping/XML/OpenCL/funcs.bin b/DataScraping/XML/OpenCL/funcs.bin
index fc573999b8d89a13a7ff4d729cec03187663e5f7..027591374c5985e2c9ea5e6cbff3547f6a46b417 100644
GIT binary patch
delta 5798
zcmai2d0drM6ZSzsz>OC{<%)t~DhdcGqN0JCOIiX(E~UAahMHieX{M5Wu9@H|ro|1H
ztXwj0zpe?XrN)w4XzOPxrCGTkqU~wloO$od<s$X*2lw1LGjrz5^30sOsM6>3b)Q`?
zZ&&tnK`QAhANB6`buiTOa}gM&a_oUvpthe2k)5<1mzC#U!#;H9Di1W@^xZBGr3ww@
zZ}(Kc?yf+vDm@os_k2gyRqcz7`t?2P)TsmgFU4+myzfDtsW9r_3yT`5p4*#;jw(98
z0BzL8e4Ex?@1(h}us2Y}78Ht*_b?&mrXtAR=KZ}uv^ulTroulol;3_o{uZ?VOD(K!
z?4N}g`^*DxLB$mrXr>~IZ1&_26QM5T8*2T*Bt)pPgDL2sVh`EW_r-=9b;wU7XCF#x
zGKwv;{`7%$ZbGec1go=$l0tg&SE2EzzEYhFrk%X%sS*#{)T8BwN<ZwUKkffHJQe}b
zyyYg*RM|eXDWmXq^+K_M7gSWCO^q*XiWoJgumEAIYf(W+XRX@#C&KYn$8=VWif!??
zFm!P-Sc3d1vX@<3YD{sQdXi(cr8o(<sq_5pw*o^&miXyU+^?<_urVduRo4<j?JD=Q
zhkra5;$RN0efN<JPXwv((kTd38_EOin@R({F+gXB{m7St5O8<Rqu)^tzqYA9U*C?w
z_Q_v==7r&^*BKkq)QB^c7@-E2*${7kq^!~d{%YjeJXX$XRpWEhHeEjFfu5@TysgPC
zE?-kujVljU{-1f;yZw;rg<fj;B^&?Wa%mO+*T&p^ISeeFUar*UONPDCl|Ua1r@24l
zKKra+TYI3l9JBrRZS+I~81~73yjEADA9~Z^udz1^JkgypJ@Eo1Jc2|@@`Mi+*To}D
z9T$dRy4w@&(A~itb|8%^4x$4kdn20n->!@1l<SSBF@nC0Ll7P41K-+sHrK;4eJF)`
z!ru~{<bx7xeP;{Qqf}ocvceo+Y_aIcei&wwf+*h)jaA=bgHHM(*<$EhACvjS(t!x1
z1NG6~qN4$3GJRG9^sz{*g87WE8ejs`dp5*ui_T}%qZ17=sW$rYMm6X*I?@;;m~~eG
zn$f}lgwlil7-}h#iyZaG@M;|6X`O-l+&GK?H;x<DW^NNaRl}LJpL0AAODv%oLFmS7
zj?f)+DhT^1bu^mL&Zd}eairJ~K*O8iDicZ#gjw`wn&Y~)X7{{qt(pIGYt1*>g<h1?
z*d^9J1lz6c%OM!YcTH}|{_akBk(@E7TB0Mb)1Sqih}PkZqtnl#HLYuf7cH@j1WvQG
zP~5?UZ%^PVt?3D0$_kT1TK7R`jj*(#9z5w(7?PMv6KUZZJV_N1%zC^v+A_8GZX7kK
z3*(tOAY2lYsdF4x!m$-5%Y9V-E*4QzB(kWyE!tS>Uf+Y)a>Fo(o{wd7rnN_xYCEAc
z{T<vzVUY-<5fLb~wl2ma#4)`CT508CRag(SaD3Ad%YdPDpaA`~MVU0s+m-D7qwxlY
zIx3>kQj1CD{MCyOjgDbO*6m{0m)2U}bY(1hS%mB_Fo^t@z>hX>g<;<L<Q?d2?K28^
zI|g<}dX-s;nFyhT16V6pY~EE|BL?#o66w<dbfqg@QRLL%U@APUFMOxvT9Xx=2y<fw
zF-RVyKYM9VFmGS+6e9WFIr9-kyY9q(1`Fe94vrb8^+{%&UPc#+p2r65n~%>ar9TJj
zdT$mKC9hYz)6l+>J-w?0j`hW>)>(2TNdgIXkAAK@ol0Znd-~xh^K$&V(1tHLdG_^}
zLbq-mLN^AYjd}Gm18~gJD>3D*OI6O(F%{<APUu7H2IDs;uPZT+--D*riDCDmt9AI9
zR5Vgv1qNk|;`9n1BFGdQz%EJ|#W0q($GH=bEHb4&h@>ZyF^lE1$8go`XBhUJIVa;`
zl~^1^pKj&yxpEf$C@)1Ee|01h(4IaRk7e|Hsw8yEOmr0G=wZ@l4;9r_bjOcFaZcaw
zXd2^eA~n39p;Nv^nsP~|T*5HXCnh~N3@Oax-@~b!JbuAqvn=z5OY}NrB2vZt=|z7J
zM+9f6n6!I@1fBO1DDnZup1)Huk2a2!a@P`+F^r?7U4bEvs0SFW`IH(P$)>Irqr{wX
zd5p9VM{(w}M|FSTTR82$-();F8n-e1=4f2xkF1G^rC#N@n<kEtgkrb;&U8k}DA(!q
z-B|3lsM;JV9Vdi)raD7K2gc(g=HS@HGtTXwfKYC)qTPQYGC0|J?W@a1YI@Tnaz~wS
zu0%OKnF~F5l3<(80oTs-N#ZE&YZtL(QdK}*MCSCN4wD5e#OGD``1E86g!YGvosZPL
zP~X;#=tFlsDt7P%<LH$~5yM>W)_SLlP40${Pp?V}m%jXT@wm<~7txp^obEQJPeBJh
z$lb=`DRPjzjkiw~BAYjz1*DKGrgAOm>7ns7bfUCQoC8UEO7VY;3;e-p(jBz5dN62A
zUrob2mK1_ySxg6nyUZ(oOuQvk(R#Wdi<s(6VH^2mAdBVQh@9ZzbfZ6fax(>Rcr$?l
zM<SWZendmrp<|gC=)9sBqTb0jh(S5jG<Nw6?uO3v6FalL(2aUMj(aSs<8i#i>BN@3
zq^sfWDLnWvAn4YvA;EQpj9J=6xrce+VtDIMhi9X?!*4dW=`578&<D8AkC~4K6g5|>
zfI}@1t|tK<cB+BitI2;6yy)9`=w#yfC~Zp>7&{of>$y>g;rU5ZNG-$|E|E-ME|LB!
z_U}MymxcZ;Zp`IkU!KK~^$&inXDUc~2C*hff@8-sD9{J-6!ABIh^@D_z&Vt$l#^h=
zVn#G)%#%K0P;s9}-A1T3H2MeT=to(344xt$u#};TCnKv0vlp-nGM7rqRuRW8<CObs
zsrF*-GQ7q7+#0XZrse2q*~jC=os_x)%`npO=n8W{V5Uk+e1%8Mtd%&!oa3J77U@1m
zGpQB5w2DW+wA>?TsgC?&P@invYjU@uo!Oj{X%v&ggQqBHMO$+i%h`lAXiK|Sqq|<~
zlRB+KBf6w8*djE38Qv80qBvHZ$ZfABt=$eDWM33y(^SVtxm?OD!;wzWE&2;$K@Nt4
z2|N}!1K^U4X;f_xSwK&}%3RJoxw0O;9UaziZ!~R~N;}r#q`9utYP~6Iy;!W%%E9a@
z%;`wVGc!xt->i)+9!D!TqAz#y(v3LI^0L$7JdfQ!ZNjfikQx`8bV#Yk7I83BYa;cg
z*LeDJ!*H+R`uRqwIow4nCUAGH+=`w5$`VHX-awu^i`5A--jt?M?c^Hz!yJX%xGGp$
zV(qm<mzQZjPhi2cA)CXtYzMR4LcOsAaZF|R#F`MWnms>brwo4X#P4^?v{);0)uRnL
zoWC31!dX^!^>Z%B4ZD!w>%(5qZ~N|)x`%Hg#p5rvJLEm=qKj`M!na{<JTz_z<IkJn
zTu6=E@`U_Q1Z=s7P(u6ci1ju8QN+O_@t{U_)_(In2ByC6qT~NLBGkd-`va(*OB?Ip
z%3Jv_`^5Xz$NA>@`2C-?QE(KyhbR0wrkU@)k9NKdYQ2%XdbdP#G4c36k;G?H_e(9*
z@TVj60J7m*zcw}E?@9U<EpBOckey!ZdBXU666TtWC5N!rjAl#Pco;{l$gcQ^pKQ)3
zk0?Zrwazc$Dv2s$ED9;YgC^L}i$!Q{G0Z!{3^$56!7dfyAt%G+V)UuW;6ta2G1kd2
zs>H>>M`Sw5gFbds+>F+L>=YSOP2FrKw{g^^B;zRNFy37_$_nDC!7+@s1Qs9TLUy*8
zZiE&xYDhNce1dHj*T_#@>v>;s+DDX1?_q@eg)BmSdhEDNKSHheFSD&Z!En>v!Gt(n
zs<P4W3;D4@gCuePxhajeFSXgt^9Dae=1|2|Za}P*B~1xlH=*LM-E=$Q_$KxEMv}u)
z?L!%-Fn}d3{e`sqw60=DY8el3)VxghfBj{wwup18i-15`KAT(lt(9n9WR#|9-^nXg
zaB{*~M$i^C_bmF->V`amGs=bOH^d^=Q^lb+-!y3XSq763jk2@N+syu6dXI2j`<`2C
zJas;gLF(Z$!+eUob)Eyn!;J3q%{3B)bK{eKD&F|x2Z8r4KXTxP5RdmKDEkDr)byW3
zuiVvooX(`DF33*@44zHYtUqn$tKflZ>h@klZ$9m>ix{nc;-d6Rg2N3i%Vb~;`YTM9
zSo)(J3wT}StA!u%TQmQP3~sE$L{aTPN4pC2&~B9kntxSrwn|J~eElk-oO;FYqHAoW
z=+fOshzBagJ}s%;<3$PAu$iUC=_gCG;XGw5y)MHa|4J1}*RJyu-5fS(`OiE%J-Y;p
X9ZP>fa$Ao$P;_07U`J($hY|8WrsYgI

delta 5597
zcmaJ_3sjX=7Vbk7F21-1J`fQS)JYUf6w(wOz*18vCrQyUOjAk_lQJ92G^cc0j?@|0
zl_gTzOo58s@;Afq0ipP!rbd|_>XM1E5eFZo&1xRsIsg56Xbo#|?>YPI_ugmkeeTy+
z{GYw#U-n8VW~h~(AXT>2U+pa2sCI2_R98H1&(3Y@ebnX#w`bapCaC&vgH?v7Nu}&?
zt4$|6c^15<+Nlv$Zq;d5fUM4d+cRL-Rv-0hjl1Jy+;r1T@ZrZG)wH`<{h`vW-uSQ-
z{Zwjsh-R&xEDtc>1?AP6LS^p>(BGaldv>GeU`@?`{im7Sw8Q2n`+y*oQxSl{YFWhz
z!yt3-<LcTWx99JBi=gIKyU{~sREKyx`xBuika4@pu^6b5E7Md`rJJk#gCS~fr7ipm
zo@J=est|QzuUp+&HCCOha^qWdyeg#QxMmYZs*kEdFw#?3l?w`<SREpjfLlFQ9i`r{
zcB_)=07R>u)%~>|s<FCMJ-^?r-Z@wrf1B3b`)BNlZ)SSK(WRCnweC<z=nV*stq=|z
z8m?ZYXjjcxM5u{1!x5#PsR`ld2J^YIrW}##o@+s#=MO&#qwY%{Ur+a=xxP|gL*3<*
z43$;xR<#Yj9=}h6I$*p`08i}6iBJV~ZuLT40Pa+Ub;B{ybENLG_L6cN+#OTe(HIlf
zsjB?cC8VqEr$aEpQ*-)~4`!-8XNzs_<f@j`X9tH(nfqvF&ir|k<~^D-Z(-7+?Ci{(
zxoXFS?kcy`*Y!Jc)6vb)qFpPzyXH)M^K`wBj)%{i?Nn`5FV(3b03+4dZ-YJ24QcJ=
zy+)d`?tFl~_|y3nW}&UTqcI$sP-S0u7Na~DFGTtq^*#Ns&h?Sa_mNI3SoA}QJT`_|
zoAIx=+UZp4(&@p>+{`&y3$yaF<}LA&#aRfFk`VOvr2gkcUnIyUMHnJw8{sRjyAUcd
z?QogU#U0R7M)_jkPhyO>uKA)bFjX$*;Z{lW!w{RM0O=Aj5Wy1a2iJ|qJw^PmR;wjx
zD-r0(nc<Hbu8RZFSCU;wl+D%XE@@#1m((<>d(?%Q4sJzf_{oF-q}oW^0?-vh<)Z-1
zb}&YC!~%*g>WDiW(3OtJBPgpAe(8WJJK<r1Vmf1~10w638$m(xX&2164!)<W0nO&c
zl$by)CJSo+II(Py8}HkoNO5(;y{+JLRMyo9Rd)66X0P20b)DB*vo(RJ3c~Y_mh*y<
zz;#R5YJ>3+1+4Fmd@qib&;#wj&Ba3qcjzALi7U=}RWJO>SrfOLEDAvf$q2z7LQNPF
zdgE=KdpvrH9`+_g?@*L-9WeyGq#}$Y4WY&lMG4H78GTHY_VwpsZ66FG;<j^)P3#VI
zW`)W8F-Xc*qrIJGxnbDpa82xskzBhYFs$%vd?f4dfJ^eijp{3NFiL8}G1f--s~1o5
zEpnP>p|_Oj)%k&lkV1<IbM8ZgNba-zh!H#?L;E5A=V=mmMq;gYl$PDhbE7=aA6vXo
z>-GW2Xhz|tuaRg`Vt)-TzKf~2d=Hk{@=Btq`^-UzM1r+)5KaL1$o4%LFGYi~lIV2Z
zK7z)LM4Eixjb57+V^RgN7{g<d#1$MzX9-N<B`UOmRIXGeN5Nm#4n>?-FUkKcekIAX
z;I;)HyA8v<N9x#rJ6NNJF~13*esMA;gN~ZA53g&>mdUn><aP518sOD`$Vf!Vwh{QT
z6`-HhCjt943o13mBFZAYX&t3sc=y(dC*cFRFd75A5ScIr(X=ygIV!~XWK5#=iS20e
z3a~aMq9++znNK4Mk{d_AHH;&X7l$kp<@^=8Lj4lIXk}<hl1Z(_N%#kGTg)@zj!ZG(
zHqiVO{N3SJIv&ey>?KmM2P0(cYY3F>uadp-$b!4{rLssj%7=K`VrjYykyh#?=B9?|
zJgmAK-JNxh$+(SclQ@Ah&{dL~7>Y4lm~+8XpgnWCJqC+DVkFPpgLUFcH6$@>5G@N*
zSuGMIzn;aHCD-4Tw=8#_?i)j8r7sDF{0*7%hcx3*L!cR{&vtu7JaZ47M(gjzNNGR7
z5u87rS0U$KEydzdm^NkauaJl_h4-;0noYE=QleIAtqhrFqGBYhn1(ds)J`MM8Q<|x
zrDHGwWs5M$CYoRqZMolM&NIoh!<as6G4DXky$o2vbYr49N?gNsV$S`hvyS}d9QMoQ
z8MvJ++nh&8;ub6wn$%vp%`~^Zcs9FBnl0_inI<V{hgVvZpJVUQS?EV@7iXDNFn-%u
zLZMw|v)p@~YZTZ!8|4JBW)7AXwLX6U?>bO}R+(u4i3`1f6VDucObkXco)vaV2`|4M
z8C3YS_F^Qpn~Pi`G>f*j%*9EaFQ#l4K4iRMawjH>cdpZXV_x{f7%p?>8!yuJ!=!w^
z6V5>rxDXws=K^Dy?c#-`%w5pR3mRbf)h#gmj9sKN(1Dar3x><OEEW}S=Khdngi-Kx
zf{e_q4;vB86C=}Kd>=8n&?0lzBe<2=w&xcz#Sc8fuz1}_ak}SI(jtDDYtZD+6xF@m
zCmS)0xbeZnY$OxGT!v$8)^a%8Ttx#gu}F(WKW(+Yl;;>DjY>g_uz_?;z9aV6B<Yn)
zRWIinxwe-2a!r!rRhT1t7h?hujj~2g%A@9n8Q&Pd=!Xz1u{|g!b_wn#t~q*V30~$}
z%d~RxkgbDvCX0pn%44R_nj1>(Tr&4@6QtM1BSUsAMNjMBkE6tU#iGTL882neGLgfd
zG*wFbMOVjI&DJ=nr7-F-%Ybw_6qdttHfhY$7;4wWbdyO*IA|X{_Y8-esRDmSAw~9m
zz%tQ$B~r*Hb0yOGWo|0HbgPX&Y?WqYUpAfJ)}~dw281-XW!bQr?Z~S}n})JXa-KsH
zk4&6&WPfHxNs=j7Q6LYTpwT|8Y$RcN>0xaB8a&9a^6_jy1J>d<Tx)aL;`d77@62#!
z%x6y>BgrqI2ky6KzJM^tRYa_i+1oho<*mahQWr1fWD!_OL680(#q>n$;j`uNh4qv*
zRZ@?kkE;0IEyMFMxeax3K3nlr>GvY;Zv%hzMbx(ey#5l#5#ZIjLb{f6<T;@*^#)+S
z0^@39kJDNPNJW7u9~x?XP>5T!W$asVR^ZFLd)|$36Dq4;L4%iTb8i~j-1SyS?grD?
zG_`CGMj!ca5xY~L*VvF+l(}6ty^b$h_Fj$iicHaMrnN{rOq0E`jpLcAd`pT^O#qWU
zRvvkSBlm$fSY-3xAl|U%hBU`^z_>SYA92GQ5F<+)IH-U5Caw}-GQ}~zvxIHI1snP^
zwX^Uoy!{gh@^lIAkorGj`_CRGyv^|czq0(`JEo9Rqc*ZFvNp3^OR`)mWvOb>y_akf
zbdlv-O`&rv@<N-oVmNW>wM3b>&5T=I>$#%k;?*kV>r2~BA}#)kfmLM~<?>@=*Ug=m
zv6A;_;{oiFfOiq$>eTw+ehI$?ujtb<`N4ysuD}~kQ{<@um}5<QpRbmmAnq$UA0W!&
zAUyoK<8<LQdrOX2koT6|h;K`5PVK=~kJ2k_4L>ZuUc+?xIv$}G$K5ozI=0p>T~1G<
zwY7urpcbNYnWjF3nRcD}YaA^$!Z+;409Qa;(ylKfOrCg(a|dm&yPk3Qa;AIq%a~<*
zChBACCU@i9A3w%XXZ=kz%AB?5AYOFV-H)*8<Q~EtZ%vS<Lx`{s`$$ZUd9>+TAqQ&g
z*Wp)O6W(2JKa2+)BI~eo7%Jqr*nw|3(uP?V>3o#M{Kq5swS)1*QHRp7H5mSK;i$vg
zyjyjq96p9+BuY6>jw59Lam;c|ICGpg#asB}%|ohd5Bv43>CV@p#KC;;la}@JPfY>$
zR<8rX{mpXd&t@oS1~z?$NhEIGultJqapYf2vGD>AOYRBW=|$4dj)@ZZ6`qoJPa3R@
zkC7yU>(JPm4Q2VusX9(Fkzd>(&|mVt<h!}+=kyd;x3ngt{6z15=hx`w6gOLJ{wWiB
zt(TlSgYRU?8PlURz#?F<MrYc^>2bnOHtlAsn0(e~X+zlr<=|PT)FsR6F068YtLIhj
z)m-I@$b)q-nV$W;o~C_P?;ZF!l0PJ$eq)*mi(fW_^!o-(<fLWBzY7g0AgS)o`lpFt
zT>!gcv>syDNZL8`yjy>cS*)jFi_>tB*0$yS!sl6@{N*2Ja-DRZ?QyzI8rX>OM11Np
zYqgn|Ha9Z%qvZWY>~P?whX3&bDhOzvMfDgw!FIwo|HNnq_r4~q;JU?4ffvoAk^)9s
zt1jBl9do<tE}44Qf@vI@dfB`Rh`x|)I8nxF>pDmze_inMHS=-d6>R3-jPm1bQ_g;8
zyl^a@qx_Wb`93wXLbU3CHAxn^8L^nFd=3Sq<2mc>RiyU!i-Z1okUv^Q`Sh^T!hE`f
F{tuOO57htw

diff --git a/LastPack.log b/LastPack.log
index c1bce31d..73a17300 100644
--- a/LastPack.log
+++ b/LastPack.log
@@ -7,13 +7,13 @@ Compiling "DataScraping/Reps/PullReps.pas"
 Compiling: OK
 Runing SubReps Update
 SubReps Update: Pulling OpenCL
-SubReps Update: cmd /c "(echo [checkout] && git checkout custom 2>&1) && (echo [pull-own]: && git pull SunSerega custom) && (echo [fetch-main] && git fetch 0_official main:main) && (echo [merge-main] && git merge main)"
+SubReps Update: cmd /c "(echo [checkout] && git checkout pretest/1215 2>&1) && (echo [pull-own]: && git pull SunSerega pretest/1215) && (echo [fetch-main] && git fetch 0_official main:main) && (echo [merge-main] && git merge main)"
 SubReps Update: OpenCL[OUT] : [checkout]
-SubReps Update: OpenCL[OUT] : Your branch is up to date with 'SunSerega/custom'.
-SubReps Update: OpenCL[OUT] : Already on 'custom'
+SubReps Update: OpenCL[OUT] : Your branch is up to date with 'SunSerega/pretest/1215'.
+SubReps Update: OpenCL[OUT] : Already on 'pretest/1215'
 SubReps Update: OpenCL[OUT] : [pull-own]:
 SubReps Update: OpenCL[ERR] : From SunSerega/OpenCL-Docs
-SubReps Update: OpenCL[ERR] : * branch custom -> FETCH_HEAD
+SubReps Update: OpenCL[ERR] : * branch pretest/1215 -> FETCH_HEAD
 SubReps Update: OpenCL[OUT] : Already up to date.
 SubReps Update: OpenCL[OUT] : [fetch-main]
 SubReps Update: OpenCL[OUT] : [merge-main]
diff --git a/Log/PullUpstream.log b/Log/PullUpstream.log
index 19a2045b..a0dd5ee6 100644
--- a/Log/PullUpstream.log
+++ b/Log/PullUpstream.log
@@ -1,13 +1,13 @@
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Update Reps ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 Runing SubReps Update
 SubReps Update: Pulling OpenCL
-SubReps Update: cmd /c "(echo [checkout] && git checkout custom 2>&1) && (echo [pull-own]: && git pull SunSerega custom) && (echo [fetch-main] && git fetch 0_official main:main) && (echo [merge-main] && git merge main)"
+SubReps Update: cmd /c "(echo [checkout] && git checkout pretest/1215 2>&1) && (echo [pull-own]: && git pull SunSerega pretest/1215) && (echo [fetch-main] && git fetch 0_official main:main) && (echo [merge-main] && git merge main)"
 SubReps Update: OpenCL[OUT] : [checkout]
-SubReps Update: OpenCL[OUT] : Your branch is up to date with 'SunSerega/custom'.
-SubReps Update: OpenCL[OUT] : Already on 'custom'
+SubReps Update: OpenCL[OUT] : Your branch is up to date with 'SunSerega/pretest/1215'.
+SubReps Update: OpenCL[OUT] : Already on 'pretest/1215'
 SubReps Update: OpenCL[OUT] : [pull-own]:
 SubReps Update: OpenCL[ERR] : From SunSerega/OpenCL-Docs
-SubReps Update: OpenCL[ERR] : * branch custom -> FETCH_HEAD
+SubReps Update: OpenCL[ERR] : * branch pretest/1215 -> FETCH_HEAD
 SubReps Update: OpenCL[OUT] : Already up to date.
 SubReps Update: OpenCL[OUT] : [fetch-main]
 SubReps Update: OpenCL[OUT] : [merge-main]
diff --git a/Modules.Packed/OpenCL.pas b/Modules.Packed/OpenCL.pas
index 6dd406aa..f05720e0 100644
--- a/Modules.Packed/OpenCL.pas
+++ b/Modules.Packed/OpenCL.pas
@@ -467,6 +467,25 @@   clCommandExecutionStatus = record
     
   end;
   
+  ///
+  clCommandProperties = record
+    public val: UInt64;
+    public constructor(val: UInt64) := self.val := val;
+    
+    public static property MUTABLE_DISPATCH_UPDATABLE_FIELDS: clCommandProperties read new clCommandProperties($12B1);
+    public static property MUTABLE_DISPATCH_ASSERTS:          clCommandProperties read new clCommandProperties($12B8);
+    
+    public function ToString: string; override;
+    begin
+      if MUTABLE_DISPATCH_UPDATABLE_FIELDS = self then
+        Result := 'MUTABLE_DISPATCH_UPDATABLE_FIELDS' else
+      if MUTABLE_DISPATCH_ASSERTS = self then
+        Result := 'MUTABLE_DISPATCH_ASSERTS' else
+        Result := $'clCommandProperties[{self.val}]';
+    end;
+    
+  end;
+  
   ///
   clCommandQueueCapabilities = record
     public val: UInt64;
@@ -4573,25 +4592,6 @@   clMutableDispatchFields = record
     
   end;
   
-  ///
-  clNDRangeKernelCommandProperties = record
-    public val: UInt64;
-    public constructor(val: UInt64) := self.val := val;
-    
-    public static property MUTABLE_DISPATCH_UPDATABLE_FIELDS: clNDRangeKernelCommandProperties read new clNDRangeKernelCommandProperties($12B1);
-    public static property MUTABLE_DISPATCH_ASSERTS:          clNDRangeKernelCommandProperties read new clNDRangeKernelCommandProperties($12B8);
-    
-    public function ToString: string; override;
-    begin
-      if MUTABLE_DISPATCH_UPDATABLE_FIELDS = self then
-        Result := 'MUTABLE_DISPATCH_UPDATABLE_FIELDS' else
-      if MUTABLE_DISPATCH_ASSERTS = self then
-        Result := 'MUTABLE_DISPATCH_ASSERTS' else
-        Result := $'clNDRangeKernelCommandProperties[{self.val}]';
-    end;
-    
-  end;
-  
   ///
   clPipeInfo = record
     public val: UInt32;
@@ -16429,7 +16429,7 @@   cl_queue_family_properties = record
   {$endif DEBUG}
   [PCUNotRestore]
   /// id: cl_khr_command_buffer
-  /// version: 0.9.4 (provisional)
+  /// version: 0.9.5 (provisional)
   /// core dependency: cl 1.2
   clCommandBufferKHR = sealed partial class
     public constructor(pl: cl_platform_id);
@@ -16579,306 +16579,438 @@   cl_queue_family_properties = record
       ntv_EnqueueCommandBufferKHR_8(num_queues, queues, command_buffer, num_events_in_wait_list, event_wait_list, &event);
     
     public CommandBarrierWithWaitListKHR_adr := GetProcAddress('clCommandBarrierWithWaitListKHR');
-    private ntv_CommandBarrierWithWaitListKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: array of UInt32; sync_point: array of UInt32; mutable_handle: array of cl_mutable_command): clErrorCode;
-      type PUInt32 = ^UInt32;
-      type PCl_mutable_command = ^cl_mutable_command;
-    begin
-      Result := if (mutable_handle<>nil) and (mutable_handle.Length<>0) then
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], mutable_handle[0]) else
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, mutable_handle[0]) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], mutable_handle[0]) else
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, mutable_handle[0]) else
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, PCl_mutable_command(nil)^) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, PCl_mutable_command(nil)^);
-    end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_2(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_3(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_4(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_5(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_6(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_7(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_8(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandBarrierWithWaitListKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_2(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_3(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_4(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_5(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_6(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_7(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_8(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandCopyBufferKHR_adr := GetProcAddress('clCommandCopyBufferKHR');
-    private ntv_CommandCopyBufferKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: array of UInt32; sync_point: array of UInt32; mutable_handle: array of cl_mutable_command): clErrorCode;
-      type PUInt32 = ^UInt32;
-      type PCl_mutable_command = ^cl_mutable_command;
-    begin
-      Result := if (mutable_handle<>nil) and (mutable_handle.Length<>0) then
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], mutable_handle[0]) else
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, mutable_handle[0]) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], mutable_handle[0]) else
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, mutable_handle[0]) else
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, PCl_mutable_command(nil)^) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, PCl_mutable_command(nil)^);
-    end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferKHR_2(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferKHR_3(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferKHR_4(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferKHR_5(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferKHR_6(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferKHR_7(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferKHR_8(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandCopyBufferKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferKHR_2(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferKHR_3(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferKHR_4(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferKHR_5(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferKHR_6(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferKHR_7(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferKHR_8(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandCopyBufferRectKHR_adr := GetProcAddress('clCommandCopyBufferRectKHR');
-    private ntv_CommandCopyBufferRectKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_2(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_3(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_4(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_5(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_6(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_7(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_8(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandCopyBufferRectKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_1(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_2(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_3(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_4(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_5(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_6(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_7(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_8(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_9(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_10(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_11(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_12(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_13(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_14(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_15(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_16(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandCopyBufferToImageKHR_adr := GetProcAddress('clCommandCopyBufferToImageKHR');
-    private ntv_CommandCopyBufferToImageKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_1(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_2(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_3(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_4(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_5(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_6(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_7(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_8(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandCopyBufferToImageKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_1(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_2(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_3(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_4(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_5(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_6(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_7(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_8(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_9(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_10(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_11(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_12(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_13(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_14(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_15(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_16(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandCopyImageKHR_adr := GetProcAddress('clCommandCopyImageKHR');
-    private ntv_CommandCopyImageKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageKHR_1(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageKHR_2(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageKHR_3(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageKHR_4(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageKHR_5(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageKHR_6(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageKHR_7(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageKHR_8(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandCopyImageKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_1(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_2(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_3(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_4(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_5(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_6(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_7(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_8(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_9(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_10(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_11(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_12(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_13(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_14(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_15(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_16(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandCopyImageToBufferKHR_adr := GetProcAddress('clCommandCopyImageToBufferKHR');
-    private ntv_CommandCopyImageToBufferKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_1(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_2(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_3(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_4(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_5(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_6(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_7(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_8(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandCopyImageToBufferKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_1(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_2(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_3(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_4(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_5(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_6(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_7(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_8(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_9(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_10(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_11(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_12(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_13(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_14(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_15(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_16(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandFillBufferKHR_adr := GetProcAddress('clCommandFillBufferKHR');
-    private ntv_CommandFillBufferKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: array of UInt32; sync_point: array of UInt32; mutable_handle: array of cl_mutable_command): clErrorCode;
-      type PUInt32 = ^UInt32;
-      type PCl_mutable_command = ^cl_mutable_command;
+    private ntv_CommandFillBufferKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
     begin
-      Result := if (mutable_handle<>nil) and (mutable_handle.Length<>0) then
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], mutable_handle[0]) else
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, mutable_handle[0]) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], mutable_handle[0]) else
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, mutable_handle[0]) else
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, PCl_mutable_command(nil)^) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, PCl_mutable_command(nil)^);
-    end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandFillBufferKHR_2(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandFillBufferKHR_3(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandFillBufferKHR_4(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandFillBufferKHR_5(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandFillBufferKHR_6(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandFillBufferKHR_7(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandFillBufferKHR_8(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+      Result := ntv_CommandFillBufferKHR_1(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_2(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_3(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_4(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillBufferKHR_5(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillBufferKHR_6(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillBufferKHR_7(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillBufferKHR_8(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_9(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_10(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_11(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_12(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillBufferKHR_13(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillBufferKHR_14(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillBufferKHR_15(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillBufferKHR_16(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandFillImageKHR_adr := GetProcAddress('clCommandFillImageKHR');
-    private ntv_CommandFillImageKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    private ntv_CommandFillImageKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillImageKHR_1(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillImageKHR_2(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
     begin
-      Result := ntv_CommandFillImageKHR_1(command_buffer, command_queue, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+      Result := ntv_CommandFillImageKHR_3(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
     begin
-      Result := ntv_CommandFillImageKHR_2(command_buffer, command_queue, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+      Result := ntv_CommandFillImageKHR_4(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillImageKHR_5(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillImageKHR_6(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillImageKHR_7(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillImageKHR_8(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
     begin
-      Result := ntv_CommandFillImageKHR_3(command_buffer, command_queue, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+      Result := ntv_CommandFillImageKHR_9(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
     begin
-      Result := ntv_CommandFillImageKHR_4(command_buffer, command_queue, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+      Result := ntv_CommandFillImageKHR_10(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandFillImageKHR_5(command_buffer, command_queue, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandFillImageKHR_6(command_buffer, command_queue, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandFillImageKHR_7(command_buffer, command_queue, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandFillImageKHR_8(command_buffer, command_queue, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillImageKHR_11(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillImageKHR_12(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillImageKHR_13(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillImageKHR_14(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillImageKHR_15(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillImageKHR_16(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandNDRangeKernelKHR_adr := GetProcAddress('clCommandNDRangeKernelKHR');
-    private ntv_CommandNDRangeKernelKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+    private ntv_CommandNDRangeKernelKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_1(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_2(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_3(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_4(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_5(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_6(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_7(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_8(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_9(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_10(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_11(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_12(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_13(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_14(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_15(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_16(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public GetCommandBufferInfoKHR_adr := GetProcAddress('clGetCommandBufferInfoKHR');
     private ntv_GetCommandBufferInfoKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; param_name: clCommandBufferInfo; param_value_size: UIntPtr; var param_value: Byte; var param_value_size_ret: UIntPtr): clErrorCode>(GetCommandBufferInfoKHR_adr);
@@ -16969,96 +17101,56 @@   cl_queue_family_properties = record
     end;
     
     public CommandSVMMemcpyKHR_adr := GetProcAddress('clCommandSVMMemcpyKHR');
-    private ntv_CommandSVMMemcpyKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: array of UInt32; sync_point: array of UInt32; mutable_handle: array of cl_mutable_command): clErrorCode;
-      type PUInt32 = ^UInt32;
-      type PCl_mutable_command = ^cl_mutable_command;
-    begin
-      Result := if (mutable_handle<>nil) and (mutable_handle.Length<>0) then
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], mutable_handle[0]) else
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, mutable_handle[0]) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], mutable_handle[0]) else
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, mutable_handle[0]) else
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, PCl_mutable_command(nil)^) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, PCl_mutable_command(nil)^);
-    end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_2(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_3(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_4(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_5(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_6(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_7(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_8(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandSVMMemcpyKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_2(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_3(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_4(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_5(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_6(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_7(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_8(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandSVMMemFillKHR_adr := GetProcAddress('clCommandSVMMemFillKHR');
-    private ntv_CommandSVMMemFillKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: array of UInt32; sync_point: array of UInt32; mutable_handle: array of cl_mutable_command): clErrorCode;
-      type PUInt32 = ^UInt32;
-      type PCl_mutable_command = ^cl_mutable_command;
-    begin
-      Result := if (mutable_handle<>nil) and (mutable_handle.Length<>0) then
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], mutable_handle[0]) else
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, mutable_handle[0]) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], mutable_handle[0]) else
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, mutable_handle[0]) else
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, PCl_mutable_command(nil)^) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, PCl_mutable_command(nil)^);
-    end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_2(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_3(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_4(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_5(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_6(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_7(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_8(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandSVMMemFillKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_2(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_3(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_4(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_5(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_6(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_7(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_8(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
   end;
   
@@ -17209,7 +17301,7 @@   cl_queue_family_properties = record
       if param_value_validate_size and (param_value_ret_size<>param_value_sz) then
         raise new InvalidOperationException($'Implementation returned a size of {param_value_ret_size} instead of {param_value_sz}');
     end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function GetMutableCommandInfoKHR_MUTABLE_DISPATCH_PROPERTIES_ARRAY(command: cl_mutable_command; var param_value: array of clNDRangeKernelCommandProperties): clErrorCode;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function GetMutableCommandInfoKHR_MUTABLE_DISPATCH_PROPERTIES_ARRAY(command: cl_mutable_command; var param_value: array of clCommandProperties): clErrorCode;
     begin
       var param_value_sz: UIntPtr;
       Result := ntv_GetMutableCommandInfoKHR_3(command, clMutableCommandInfo.MUTABLE_DISPATCH_PROPERTIES_ARRAY, UIntPtr.Zero,nil,param_value_sz);
@@ -17219,13 +17311,13 @@   cl_queue_family_properties = record
         param_value := nil;
         exit;
       end;
-      var param_value_temp_res := new clNDRangeKernelCommandProperties[param_value_sz.ToUInt64 div Marshal.SizeOf&<clNDRangeKernelCommandProperties>];
+      var param_value_temp_res := new clCommandProperties[param_value_sz.ToUInt64 div Marshal.SizeOf&<clCommandProperties>];
       Result := GetMutableCommandInfoKHR(command, clMutableCommandInfo.MUTABLE_DISPATCH_PROPERTIES_ARRAY, param_value_sz,param_value_temp_res[0],IntPtr.Zero);
       param_value := param_value_temp_res;
     end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function GetMutableCommandInfoKHR_MUTABLE_DISPATCH_PROPERTIES_ARRAY(command: cl_mutable_command; param_value_count: UInt32; var param_value: clNDRangeKernelCommandProperties): clErrorCode;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function GetMutableCommandInfoKHR_MUTABLE_DISPATCH_PROPERTIES_ARRAY(command: cl_mutable_command; param_value_count: UInt32; var param_value: clCommandProperties): clErrorCode;
     begin
-      var param_value_sz := new UIntPtr(param_value_count*Marshal.SizeOf&<clNDRangeKernelCommandProperties>);
+      var param_value_sz := new UIntPtr(param_value_count*Marshal.SizeOf&<clCommandProperties>);
       Result := GetMutableCommandInfoKHR(command, clMutableCommandInfo.MUTABLE_DISPATCH_PROPERTIES_ARRAY, param_value_sz,param_value,IntPtr.Zero);
     end;
     public [MethodImpl(MethodImplOptions.AggressiveInlining)] function GetMutableCommandInfoKHR_MUTABLE_DISPATCH_KERNEL(command: cl_mutable_command; var param_value: cl_kernel; param_value_validate_size: boolean := false): clErrorCode;
diff --git a/Packing/Descriptions/OpenCL.predoc b/Packing/Descriptions/OpenCL.predoc
index d379dbf4..cebb7df9 100644
--- a/Packing/Descriptions/OpenCL.predoc
+++ b/Packing/Descriptions/OpenCL.predoc
@@ -459,6 +459,25 @@ type
     
   end;
   
+  ///
+  clCommandProperties = record
+    public val: UInt64;
+    public constructor(val: UInt64) := self.val := val;
+    
+    public static property MUTABLE_DISPATCH_UPDATABLE_FIELDS: clCommandProperties read new clCommandProperties($12B1);
+    public static property MUTABLE_DISPATCH_ASSERTS:          clCommandProperties read new clCommandProperties($12B8);
+    
+    public function ToString: string; override;
+    begin
+      if MUTABLE_DISPATCH_UPDATABLE_FIELDS = self then
+        Result := 'MUTABLE_DISPATCH_UPDATABLE_FIELDS' else
+      if MUTABLE_DISPATCH_ASSERTS = self then
+        Result := 'MUTABLE_DISPATCH_ASSERTS' else
+        Result := $'clCommandProperties[{self.val}]';
+    end;
+    
+  end;
+  
   ///
   clCommandQueueCapabilities = record
     public val: UInt64;
@@ -4565,25 +4584,6 @@ type
     
   end;
   
-  ///
-  clNDRangeKernelCommandProperties = record
-    public val: UInt64;
-    public constructor(val: UInt64) := self.val := val;
-    
-    public static property MUTABLE_DISPATCH_UPDATABLE_FIELDS: clNDRangeKernelCommandProperties read new clNDRangeKernelCommandProperties($12B1);
-    public static property MUTABLE_DISPATCH_ASSERTS:          clNDRangeKernelCommandProperties read new clNDRangeKernelCommandProperties($12B8);
-    
-    public function ToString: string; override;
-    begin
-      if MUTABLE_DISPATCH_UPDATABLE_FIELDS = self then
-        Result := 'MUTABLE_DISPATCH_UPDATABLE_FIELDS' else
-      if MUTABLE_DISPATCH_ASSERTS = self then
-        Result := 'MUTABLE_DISPATCH_ASSERTS' else
-        Result := $'clNDRangeKernelCommandProperties[{self.val}]';
-    end;
-    
-  end;
-  
   ///
   clPipeInfo = record
     public val: UInt32;
@@ -16417,7 +16417,7 @@ type
   {$endif DEBUG}
   [PCUNotRestore]
   /// id: cl_khr_command_buffer
-  /// version: 0.9.4 (provisional)
+  /// version: 0.9.5 (provisional)
   /// core dependency: cl 1.2
   clCommandBufferKHR = sealed partial class
     public constructor(pl: cl_platform_id);
@@ -16567,306 +16567,438 @@ type
       ntv_EnqueueCommandBufferKHR_8(num_queues, queues, command_buffer, num_events_in_wait_list, event_wait_list, &event);
     
     public CommandBarrierWithWaitListKHR_adr := GetProcAddress('clCommandBarrierWithWaitListKHR');
-    private ntv_CommandBarrierWithWaitListKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: array of UInt32; sync_point: array of UInt32; mutable_handle: array of cl_mutable_command): clErrorCode;
-      type PUInt32 = ^UInt32;
-      type PCl_mutable_command = ^cl_mutable_command;
-    begin
-      Result := if (mutable_handle<>nil) and (mutable_handle.Length<>0) then
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], mutable_handle[0]) else
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, mutable_handle[0]) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], mutable_handle[0]) else
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, mutable_handle[0]) else
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, PCl_mutable_command(nil)^) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, PCl_mutable_command(nil)^);
-    end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_2(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_3(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_4(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_5(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_6(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_7(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_8(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandBarrierWithWaitListKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_2(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_3(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_4(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_5(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_6(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_7(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_8(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandCopyBufferKHR_adr := GetProcAddress('clCommandCopyBufferKHR');
-    private ntv_CommandCopyBufferKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: array of UInt32; sync_point: array of UInt32; mutable_handle: array of cl_mutable_command): clErrorCode;
-      type PUInt32 = ^UInt32;
-      type PCl_mutable_command = ^cl_mutable_command;
-    begin
-      Result := if (mutable_handle<>nil) and (mutable_handle.Length<>0) then
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], mutable_handle[0]) else
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, mutable_handle[0]) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], mutable_handle[0]) else
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, mutable_handle[0]) else
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, PCl_mutable_command(nil)^) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, PCl_mutable_command(nil)^);
-    end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferKHR_2(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferKHR_3(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferKHR_4(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferKHR_5(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferKHR_6(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferKHR_7(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferKHR_8(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandCopyBufferKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferKHR_2(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferKHR_3(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferKHR_4(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferKHR_5(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferKHR_6(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferKHR_7(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferKHR_8(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandCopyBufferRectKHR_adr := GetProcAddress('clCommandCopyBufferRectKHR');
-    private ntv_CommandCopyBufferRectKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_2(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_3(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_4(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_5(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_6(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_7(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_8(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandCopyBufferRectKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_1(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_2(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_3(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_4(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_5(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_6(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_7(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_8(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_9(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_10(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_11(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_12(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_13(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_14(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_15(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_16(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandCopyBufferToImageKHR_adr := GetProcAddress('clCommandCopyBufferToImageKHR');
-    private ntv_CommandCopyBufferToImageKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_1(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_2(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_3(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_4(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_5(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_6(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_7(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_8(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandCopyBufferToImageKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_1(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_2(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_3(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_4(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_5(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_6(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_7(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_8(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_9(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_10(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_11(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_12(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_13(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_14(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_15(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_16(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandCopyImageKHR_adr := GetProcAddress('clCommandCopyImageKHR');
-    private ntv_CommandCopyImageKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageKHR_1(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageKHR_2(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageKHR_3(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageKHR_4(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageKHR_5(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageKHR_6(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageKHR_7(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageKHR_8(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandCopyImageKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_1(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_2(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_3(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_4(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_5(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_6(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_7(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_8(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_9(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_10(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_11(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_12(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_13(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_14(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_15(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_16(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandCopyImageToBufferKHR_adr := GetProcAddress('clCommandCopyImageToBufferKHR');
-    private ntv_CommandCopyImageToBufferKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_1(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_2(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_3(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_4(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_5(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_6(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_7(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_8(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandCopyImageToBufferKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_1(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_2(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_3(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_4(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_5(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_6(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_7(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_8(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_9(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_10(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_11(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_12(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_13(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_14(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_15(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_16(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandFillBufferKHR_adr := GetProcAddress('clCommandFillBufferKHR');
-    private ntv_CommandFillBufferKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: array of UInt32; sync_point: array of UInt32; mutable_handle: array of cl_mutable_command): clErrorCode;
-      type PUInt32 = ^UInt32;
-      type PCl_mutable_command = ^cl_mutable_command;
+    private ntv_CommandFillBufferKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
     begin
-      Result := if (mutable_handle<>nil) and (mutable_handle.Length<>0) then
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], mutable_handle[0]) else
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, mutable_handle[0]) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], mutable_handle[0]) else
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, mutable_handle[0]) else
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, PCl_mutable_command(nil)^) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, PCl_mutable_command(nil)^);
-    end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandFillBufferKHR_2(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandFillBufferKHR_3(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandFillBufferKHR_4(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandFillBufferKHR_5(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandFillBufferKHR_6(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandFillBufferKHR_7(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandFillBufferKHR_8(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+      Result := ntv_CommandFillBufferKHR_1(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_2(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_3(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_4(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillBufferKHR_5(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillBufferKHR_6(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillBufferKHR_7(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillBufferKHR_8(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_9(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_10(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_11(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_12(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillBufferKHR_13(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillBufferKHR_14(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillBufferKHR_15(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillBufferKHR_16(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandFillImageKHR_adr := GetProcAddress('clCommandFillImageKHR');
-    private ntv_CommandFillImageKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    private ntv_CommandFillImageKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillImageKHR_1(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillImageKHR_2(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
     begin
-      Result := ntv_CommandFillImageKHR_1(command_buffer, command_queue, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+      Result := ntv_CommandFillImageKHR_3(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
     begin
-      Result := ntv_CommandFillImageKHR_2(command_buffer, command_queue, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+      Result := ntv_CommandFillImageKHR_4(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillImageKHR_5(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillImageKHR_6(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillImageKHR_7(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillImageKHR_8(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
     begin
-      Result := ntv_CommandFillImageKHR_3(command_buffer, command_queue, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+      Result := ntv_CommandFillImageKHR_9(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
     begin
-      Result := ntv_CommandFillImageKHR_4(command_buffer, command_queue, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+      Result := ntv_CommandFillImageKHR_10(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandFillImageKHR_5(command_buffer, command_queue, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandFillImageKHR_6(command_buffer, command_queue, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandFillImageKHR_7(command_buffer, command_queue, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandFillImageKHR_8(command_buffer, command_queue, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillImageKHR_11(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillImageKHR_12(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillImageKHR_13(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillImageKHR_14(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillImageKHR_15(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillImageKHR_16(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandNDRangeKernelKHR_adr := GetProcAddress('clCommandNDRangeKernelKHR');
-    private ntv_CommandNDRangeKernelKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+    private ntv_CommandNDRangeKernelKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_1(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_2(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_3(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_4(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_5(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_6(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_7(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_8(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_9(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_10(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_11(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_12(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_13(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_14(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_15(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_16(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public GetCommandBufferInfoKHR_adr := GetProcAddress('clGetCommandBufferInfoKHR');
     private ntv_GetCommandBufferInfoKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; param_name: clCommandBufferInfo; param_value_size: UIntPtr; var param_value: Byte; var param_value_size_ret: UIntPtr): clErrorCode>(GetCommandBufferInfoKHR_adr);
@@ -16957,96 +17089,56 @@ type
     end;
     
     public CommandSVMMemcpyKHR_adr := GetProcAddress('clCommandSVMMemcpyKHR');
-    private ntv_CommandSVMMemcpyKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: array of UInt32; sync_point: array of UInt32; mutable_handle: array of cl_mutable_command): clErrorCode;
-      type PUInt32 = ^UInt32;
-      type PCl_mutable_command = ^cl_mutable_command;
-    begin
-      Result := if (mutable_handle<>nil) and (mutable_handle.Length<>0) then
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], mutable_handle[0]) else
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, mutable_handle[0]) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], mutable_handle[0]) else
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, mutable_handle[0]) else
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, PCl_mutable_command(nil)^) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, PCl_mutable_command(nil)^);
-    end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_2(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_3(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_4(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_5(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_6(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_7(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_8(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandSVMMemcpyKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_2(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_3(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_4(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_5(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_6(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_7(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_8(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandSVMMemFillKHR_adr := GetProcAddress('clCommandSVMMemFillKHR');
-    private ntv_CommandSVMMemFillKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: array of UInt32; sync_point: array of UInt32; mutable_handle: array of cl_mutable_command): clErrorCode;
-      type PUInt32 = ^UInt32;
-      type PCl_mutable_command = ^cl_mutable_command;
-    begin
-      Result := if (mutable_handle<>nil) and (mutable_handle.Length<>0) then
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], mutable_handle[0]) else
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, mutable_handle[0]) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], mutable_handle[0]) else
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, mutable_handle[0]) else
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, PCl_mutable_command(nil)^) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, PCl_mutable_command(nil)^);
-    end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_2(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_3(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_4(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_5(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_6(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_7(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_8(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandSVMMemFillKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_2(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_3(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_4(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_5(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_6(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_7(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_8(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
   end;
   
@@ -17197,7 +17289,7 @@ type
       if param_value_validate_size and (param_value_ret_size<>param_value_sz) then
         raise new InvalidOperationException($'Implementation returned a size of {param_value_ret_size} instead of {param_value_sz}');
     end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function GetMutableCommandInfoKHR_MUTABLE_DISPATCH_PROPERTIES_ARRAY(command: cl_mutable_command; var param_value: array of clNDRangeKernelCommandProperties): clErrorCode;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function GetMutableCommandInfoKHR_MUTABLE_DISPATCH_PROPERTIES_ARRAY(command: cl_mutable_command; var param_value: array of clCommandProperties): clErrorCode;
     begin
       var param_value_sz: UIntPtr;
       Result := ntv_GetMutableCommandInfoKHR_3(command, clMutableCommandInfo.MUTABLE_DISPATCH_PROPERTIES_ARRAY, UIntPtr.Zero,nil,param_value_sz);
@@ -17207,13 +17299,13 @@ type
         param_value := nil;
         exit;
       end;
-      var param_value_temp_res := new clNDRangeKernelCommandProperties[param_value_sz.ToUInt64 div Marshal.SizeOf&<clNDRangeKernelCommandProperties>];
+      var param_value_temp_res := new clCommandProperties[param_value_sz.ToUInt64 div Marshal.SizeOf&<clCommandProperties>];
       Result := GetMutableCommandInfoKHR(command, clMutableCommandInfo.MUTABLE_DISPATCH_PROPERTIES_ARRAY, param_value_sz,param_value_temp_res[0],IntPtr.Zero);
       param_value := param_value_temp_res;
     end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function GetMutableCommandInfoKHR_MUTABLE_DISPATCH_PROPERTIES_ARRAY(command: cl_mutable_command; param_value_count: UInt32; var param_value: clNDRangeKernelCommandProperties): clErrorCode;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function GetMutableCommandInfoKHR_MUTABLE_DISPATCH_PROPERTIES_ARRAY(command: cl_mutable_command; param_value_count: UInt32; var param_value: clCommandProperties): clErrorCode;
     begin
-      var param_value_sz := new UIntPtr(param_value_count*Marshal.SizeOf&<clNDRangeKernelCommandProperties>);
+      var param_value_sz := new UIntPtr(param_value_count*Marshal.SizeOf&<clCommandProperties>);
       Result := GetMutableCommandInfoKHR(command, clMutableCommandInfo.MUTABLE_DISPATCH_PROPERTIES_ARRAY, param_value_sz,param_value,IntPtr.Zero);
     end;
     public [MethodImpl(MethodImplOptions.AggressiveInlining)] function GetMutableCommandInfoKHR_MUTABLE_DISPATCH_KERNEL(command: cl_mutable_command; var param_value: cl_kernel; param_value_validate_size: boolean := false): clErrorCode;
diff --git a/Packing/Template/LowLvl/Fixers/Func/OpenCL/cl_khr_command_buffer.dat b/Packing/Template/LowLvl/Fixers/Func/OpenCL/cl_khr_command_buffer.dat
index 57407a5a..2f7b3944 100644
--- a/Packing/Template/LowLvl/Fixers/Func/OpenCL/cl_khr_command_buffer.dat
+++ b/Packing/Template/LowLvl/Fixers/Func/OpenCL/cl_khr_command_buffer.dat
@@ -1,47 +1,63 @@
 
 
 
+# cl::CommandBarrierWithWaitList+KHR
+!possible_par_types
+ *	| *	| *	| -array of cl::CommandProperties	const	| *	| -array of UInt32	const	| -array of UInt32 -IntPtr	| -array of cl::mutable_command	|
+
+# cl::CommandCopyBuffer+KHR
+!possible_par_types
+ *	| *	| *	| -array of cl::CommandProperties	const	| *	| *	| *	| *	| *	| *	| -array of UInt32	const	| -array of UInt32 -IntPtr	| -array of cl::mutable_command	|
+
 # cl::CommandCopyBufferRect+KHR
 !possible_par_types
- *	| *	| *	| *	| *	| -array of UIntPtr	const	| -array of UIntPtr	const	| -array of UIntPtr	const	| *	| *	| *	| *	| *	| -array of UInt32	const	| -array of UInt32 -IntPtr	| -array of cl::mutable_command	|
+ *	| *	| *	| -array of cl::CommandProperties	const	| *	| *	| -array of UIntPtr	const	| -array of UIntPtr	const	| -array of UIntPtr	const	| *	| *	| *	| *	| *	| -array of UInt32	const	| -array of UInt32 -IntPtr	| -array of cl::mutable_command	|
 !limit_ovrs
- *	| *	| *	| *	| *	| var UIntPtr		const	| var UIntPtr		const	| var UIntPtr		const	| *	| *	| *	| *	| *	| *							| *							| *								|
- *	| *	| *	| *	| *	| IntPtr			const	| IntPtr			const	| IntPtr			const	| *	| *	| *	| *	| *	| *							| *							| *								|
+ *	| *	| *	| *											| *	| *	| var UIntPtr		const	| var UIntPtr		const	| var UIntPtr		const	| *	| *	| *	| *	| *	| *							| *							| *								|
+ *	| *	| *	| *											| *	| *	| IntPtr			const	| IntPtr			const	| IntPtr			const	| *	| *	| *	| *	| *	| *							| *							| *								|
 
-# cl::CommandCopyImage+KHR
+# cl::CommandCopyBufferToImage+KHR
 !possible_par_types
- *	| *	| *	| *	| *	| -array of UIntPtr	const	| -array of UIntPtr	const	| -array of UIntPtr	const	| *	| -array of UInt32	const	| -array of UInt32 -IntPtr	| -array of cl::mutable_command	|
+ *	| *	| *	| -array of cl::CommandProperties	const	| *	| *	| *	| -array of UIntPtr	const	| -array of UIntPtr	const	| *	| -array of UInt32	const	| -array of UInt32 -IntPtr	| -array of cl::mutable_command	|
 !limit_ovrs
- *	| *	| *	| *	| *	| var UIntPtr		const	| var UIntPtr		const	| var UIntPtr		const	| *	| *							| *							| *								|
- *	| *	| *	| *	| *	| IntPtr			const	| IntPtr			const	| IntPtr			const	| *	| *							| *							| *								|
+ *	| *	| *	| *											| *	| *	| *	| var UIntPtr		const	| var UIntPtr		const	| *	| *							| *							| *								|
+ *	| *	| *	| *											| *	| *	| *	| IntPtr			const	| IntPtr			const	| *	| *							| *							| *								|
 
-# cl::CommandCopyBufferToImage+KHR
+# cl::CommandCopyImage+KHR
 !possible_par_types
- *	| *	| *	| *	| *	| *	| -array of UIntPtr	const	| -array of UIntPtr	const	| *	| -array of UInt32	const	| -array of UInt32 -IntPtr	| -array of cl::mutable_command	|
+ *	| *	| *	| -array of cl::CommandProperties	const	| *	| *	| -array of UIntPtr	const	| -array of UIntPtr	const	| -array of UIntPtr	const	| *	| -array of UInt32	const	| -array of UInt32 -IntPtr	| -array of cl::mutable_command	|
 !limit_ovrs
- *	| *	| *	| *	| *	| *	| var UIntPtr		const	| var UIntPtr		const	| *	| *							| *							| *								|
- *	| *	| *	| *	| *	| *	| IntPtr			const	| IntPtr			const	| *	| *							| *							| *								|
+ *	| *	| *	| *											| *	| *	| var UIntPtr		const	| var UIntPtr		const	| var UIntPtr		const	| *	| *							| *							| *								|
+ *	| *	| *	| *											| *	| *	| IntPtr			const	| IntPtr			const	| IntPtr			const	| *	| *							| *							| *								|
 
 # cl::CommandCopyImageToBuffer+KHR
 !possible_par_types
- *	| *	| *	| *	| *	| -array of UIntPtr	const	| -array of UIntPtr	const	| *	| *	| -array of UInt32	const	| -array of UInt32 -IntPtr	| -array of cl::mutable_command	|
+ *	| *	| *	| -array of cl::CommandProperties	const	| *	| *	| -array of UIntPtr	const	| -array of UIntPtr	const	| *	| *	| -array of UInt32	const	| -array of UInt32 -IntPtr	| -array of cl::mutable_command	|
 !limit_ovrs
- *	| *	| *	| *	| *	| var UIntPtr		const	| var UIntPtr		const	| *	| *	| *							| *							| *								|
- *	| *	| *	| *	| *	| IntPtr			const	| IntPtr			const	| *	| *	| *							| *							| *								|
-
+ *	| *	| *	| *											| *	| *	| var UIntPtr		const	| var UIntPtr		const	| *	| *	| *							| *							| *								|
+ *	| *	| *	| *											| *	| *	| IntPtr			const	| IntPtr			const	| *	| *	| *							| *							| *								|
 
+# cl::CommandFillBuffer+KHR
+!possible_par_types
+ *	| *	| *	| -array of cl::CommandProperties	const	| *	| +var T const	| *	| *	| *	| *	| -array of UInt32	const	| -array of UInt32 -IntPtr	| -array of cl::mutable_command	|
 
 # cl::CommandFillImage+KHR
 !possible_par_types
- *	| *	| *	| *	| +var T const	| -array of UIntPtr const -IntPtr const	| -array of UIntPtr const -IntPtr const	| *	| -array of UInt32 const	| -array of UInt32 -IntPtr	| -array of cl::mutable_command	|
-
-
+ *	| *	| *	| -array of cl::CommandProperties	const	| *	| +var T const	| -array of UIntPtr const -IntPtr const	| -array of UIntPtr const -IntPtr const	| *	| -array of UInt32 const	| -array of UInt32 -IntPtr	| -array of cl::mutable_command	|
 
 # cl::CommandNDRangeKernel+KHR
 !possible_par_types
- *	| *	| *	| -array of cl::NDRangeKernelCommandProperties	const	| *	| *	| -array of UIntPtr	const	| -array of UIntPtr	const	| -array of UIntPtr	const	| *	| -array of UInt32	const	| -array of UInt32 -IntPtr	| -array of cl::mutable_command	|
+ *	| *	| *	| -array of cl::CommandProperties	const	| *	| *	| -array of UIntPtr	const	| -array of UIntPtr	const	| -array of UIntPtr	const	| *	| -array of UInt32	const	| -array of UInt32 -IntPtr	| -array of cl::mutable_command	|
 !limit_ovrs
- *	| *	| *	| var cl::NDRangeKernelCommandProperties		const	| *	| *	| var UIntPtr		const	| var UIntPtr		const	| var UIntPtr		const	| *	| *							| *							| *								|
- *	| *	| *	| IntPtr										const	| *	| *	| IntPtr			const	| IntPtr			const	| IntPtr			const	| *	| *							| *							| *								|
+ *	| *	| *	| *											| *	| *	| var UIntPtr		const	| var UIntPtr		const	| var UIntPtr		const	| *	| *							| *							| *								|
+ *	| *	| *	| *											| *	| *	| IntPtr			const	| IntPtr			const	| IntPtr			const	| *	| *							| *							| *								|
+
+# cl::CommandSVMMemcpy+KHR 
+!possible_par_types
+ *	| *	| *	| -array of cl::CommandProperties	const	| *	| *	| *	| *	| -array of UInt32	const	| -array of UInt32 -IntPtr	| -array of cl::mutable_command	|
+
+# cl::CommandSVMMemFill+KHR 
+!possible_par_types
+ *	| *	| *	| -array of cl::CommandProperties	const	| *	| *	| *	| *	| *	| -array of UInt32	const	| -array of UInt32 -IntPtr	| -array of cl::mutable_command	|
 
 
diff --git a/Packing/Template/LowLvl/Fixers/Group/OpenCL/0Misc.dat b/Packing/Template/LowLvl/Fixers/Group/OpenCL/0Misc.dat
index 52068860..1cb0b19f 100644
--- a/Packing/Template/LowLvl/Fixers/Group/OpenCL/0Misc.dat
+++ b/Packing/Template/LowLvl/Fixers/Group/OpenCL/0Misc.dat
@@ -39,10 +39,6 @@ cl::DeviceSVMCapabilities
 !rename
 cl::DeviceOnDeviceEnqueueCapabilities
 
-# cl::NdrangeKernelCommandProperties
-!rename
-cl::NDRangeKernelCommandProperties
-
 # cl::D3d[%v:10,11%]Device[%end:Set,Source%]
 !rename
 cl::D3D{%v%}Device{%end%}
diff --git a/Packing/Template/LowLvl/OpenCL/Extension.Interface.template b/Packing/Template/LowLvl/OpenCL/Extension.Interface.template
index fe674eca..507973a4 100644
--- a/Packing/Template/LowLvl/OpenCL/Extension.Interface.template
+++ b/Packing/Template/LowLvl/OpenCL/Extension.Interface.template
@@ -2773,7 +2773,7 @@
   {$endif DEBUG}
   [PCUNotRestore]
   /// id: cl_khr_command_buffer
-  /// version: 0.9.4 (provisional)
+  /// version: 0.9.5 (provisional)
   /// core dependency: cl 1.2
   clCommandBufferKHR = sealed partial class
     public constructor(pl: cl_platform_id);
@@ -2923,306 +2923,438 @@
       ntv_EnqueueCommandBufferKHR_8(num_queues, queues, command_buffer, num_events_in_wait_list, event_wait_list, &event);
     
     public CommandBarrierWithWaitListKHR_adr := GetProcAddress('clCommandBarrierWithWaitListKHR');
-    private ntv_CommandBarrierWithWaitListKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    private ntv_CommandBarrierWithWaitListKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: array of UInt32; sync_point: array of UInt32; mutable_handle: array of cl_mutable_command): clErrorCode;
-      type PUInt32 = ^UInt32;
-      type PCl_mutable_command = ^cl_mutable_command;
-    begin
-      Result := if (mutable_handle<>nil) and (mutable_handle.Length<>0) then
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], mutable_handle[0]) else
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, mutable_handle[0]) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], mutable_handle[0]) else
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, mutable_handle[0]) else
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, PCl_mutable_command(nil)^) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, PCl_mutable_command(nil)^);
-    end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_2(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_3(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_4(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_5(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_6(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_7(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandBarrierWithWaitListKHR_8(command_buffer, command_queue, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandBarrierWithWaitListKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    private ntv_CommandBarrierWithWaitListKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandBarrierWithWaitListKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_1(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_2(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_3(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_4(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_5(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_6(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_7(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandBarrierWithWaitListKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandBarrierWithWaitListKHR_8(command_buffer, command_queue, properties, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandCopyBufferKHR_adr := GetProcAddress('clCommandCopyBufferKHR');
-    private ntv_CommandCopyBufferKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
-    private ntv_CommandCopyBufferKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: array of UInt32; sync_point: array of UInt32; mutable_handle: array of cl_mutable_command): clErrorCode;
-      type PUInt32 = ^UInt32;
-      type PCl_mutable_command = ^cl_mutable_command;
-    begin
-      Result := if (mutable_handle<>nil) and (mutable_handle.Length<>0) then
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], mutable_handle[0]) else
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, mutable_handle[0]) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], mutable_handle[0]) else
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, mutable_handle[0]) else
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, PCl_mutable_command(nil)^) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, PCl_mutable_command(nil)^);
-    end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferKHR_2(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferKHR_3(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferKHR_4(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferKHR_5(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferKHR_6(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferKHR_7(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferKHR_8(command_buffer, command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandCopyBufferKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferKHR_adr);
+    private ntv_CommandCopyBufferKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferKHR_1(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferKHR_2(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferKHR_3(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferKHR_4(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferKHR_5(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferKHR_6(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferKHR_7(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_offset: UIntPtr; dst_offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferKHR_8(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_offset, dst_offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandCopyBufferRectKHR_adr := GetProcAddress('clCommandCopyBufferRectKHR');
-    private ntv_CommandCopyBufferRectKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    private ntv_CommandCopyBufferRectKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_1(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_2(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_3(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_4(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_5(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_6(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_7(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferRectKHR_8(command_buffer, command_queue, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandCopyBufferRectKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    private ntv_CommandCopyBufferRectKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferRectKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_1(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_2(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_3(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_4(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_5(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_6(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_7(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_8(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_9(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_10(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_11(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_12(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_13(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_14(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_15(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferRectKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; src_row_pitch: UIntPtr; src_slice_pitch: UIntPtr; dst_row_pitch: UIntPtr; dst_slice_pitch: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferRectKHR_16(command_buffer, command_queue, properties, src_buffer, dst_buffer, src_origin, dst_origin, region, src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandCopyBufferToImageKHR_adr := GetProcAddress('clCommandCopyBufferToImageKHR');
-    private ntv_CommandCopyBufferToImageKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    private ntv_CommandCopyBufferToImageKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_1(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_2(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_3(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_4(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_5(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_6(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_7(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyBufferToImageKHR_8(command_buffer, command_queue, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandCopyBufferToImageKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    private ntv_CommandCopyBufferToImageKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyBufferToImageKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_1(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_2(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_3(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_4(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_5(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_6(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_7(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_8(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_9(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_10(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_11(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_12(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_13(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_14(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_15(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyBufferToImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_buffer: cl_mem; dst_image: cl_mem; src_offset: UIntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyBufferToImageKHR_16(command_buffer, command_queue, properties, src_buffer, dst_image, src_offset, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandCopyImageKHR_adr := GetProcAddress('clCommandCopyImageKHR');
-    private ntv_CommandCopyImageKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
-    private ntv_CommandCopyImageKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageKHR_1(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageKHR_2(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageKHR_3(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageKHR_4(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageKHR_5(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageKHR_6(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageKHR_7(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageKHR_8(command_buffer, command_queue, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandCopyImageKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageKHR_adr);
+    private ntv_CommandCopyImageKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_1(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_2(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_3(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_4(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_5(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_6(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_7(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_8(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_9(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_10(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_11(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; var src_origin: UIntPtr; var dst_origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_12(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_13(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_14(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageKHR_15(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_image: cl_mem; src_origin: IntPtr; dst_origin: IntPtr; region: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageKHR_16(command_buffer, command_queue, properties, src_image, dst_image, src_origin, dst_origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandCopyImageToBufferKHR_adr := GetProcAddress('clCommandCopyImageToBufferKHR');
-    private ntv_CommandCopyImageToBufferKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    private ntv_CommandCopyImageToBufferKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_1(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_2(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_3(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_4(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_5(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_6(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_7(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandCopyImageToBufferKHR_8(command_buffer, command_queue, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandCopyImageToBufferKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    private ntv_CommandCopyImageToBufferKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandCopyImageToBufferKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_1(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_2(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_3(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_4(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_5(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_6(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_7(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_8(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_9(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_10(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_11(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; var src_origin: UIntPtr; var region: UIntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_12(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_13(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_14(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_15(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandCopyImageToBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; src_image: cl_mem; dst_buffer: cl_mem; src_origin: IntPtr; region: IntPtr; dst_offset: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandCopyImageToBufferKHR_16(command_buffer, command_queue, properties, src_image, dst_buffer, src_origin, region, dst_offset, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandFillBufferKHR_adr := GetProcAddress('clCommandFillBufferKHR');
-    private ntv_CommandFillBufferKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
-    private ntv_CommandFillBufferKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: array of UInt32; sync_point: array of UInt32; mutable_handle: array of cl_mutable_command): clErrorCode;
-      type PUInt32 = ^UInt32;
-      type PCl_mutable_command = ^cl_mutable_command;
+    private ntv_CommandFillBufferKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: Byte; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillBufferKHR_adr);
+    private ntv_CommandFillBufferKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillBufferKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_1(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_2(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
     begin
-      Result := if (mutable_handle<>nil) and (mutable_handle.Length<>0) then
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], mutable_handle[0]) else
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, mutable_handle[0]) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], mutable_handle[0]) else
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, mutable_handle[0]) else
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, PCl_mutable_command(nil)^) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, PCl_mutable_command(nil)^);
-    end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandFillBufferKHR_1(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandFillBufferKHR_2(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandFillBufferKHR_3(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandFillBufferKHR_4(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandFillBufferKHR_5(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandFillBufferKHR_6(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandFillBufferKHR_7(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; buffer: cl_mem; pattern: IntPtr; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandFillBufferKHR_8(command_buffer, command_queue, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+      Result := ntv_CommandFillBufferKHR_3(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_4(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillBufferKHR_5(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillBufferKHR_6(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillBufferKHR_7(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillBufferKHR_8(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_9(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_10(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_11(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; var pattern: T; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillBufferKHR_12(command_buffer, command_queue, properties, buffer, PByte(pointer(@pattern))^, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillBufferKHR_13(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillBufferKHR_14(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillBufferKHR_15(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillBufferKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; buffer: cl_mem; pattern: pointer; pattern_size: UIntPtr; offset: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillBufferKHR_16(command_buffer, command_queue, properties, buffer, pattern, pattern_size, offset, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandFillImageKHR_adr := GetProcAddress('clCommandFillImageKHR');
-    private ntv_CommandFillImageKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
-    private ntv_CommandFillImageKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    private ntv_CommandFillImageKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: Byte; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandFillImageKHR_adr);
+    private ntv_CommandFillImageKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandFillImageKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
     begin
-      Result := ntv_CommandFillImageKHR_1(command_buffer, command_queue, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+      Result := ntv_CommandFillImageKHR_1(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
     begin
-      Result := ntv_CommandFillImageKHR_2(command_buffer, command_queue, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+      Result := ntv_CommandFillImageKHR_2(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
     begin
-      Result := ntv_CommandFillImageKHR_3(command_buffer, command_queue, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+      Result := ntv_CommandFillImageKHR_3(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
     begin
-      Result := ntv_CommandFillImageKHR_4(command_buffer, command_queue, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+      Result := ntv_CommandFillImageKHR_4(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandFillImageKHR_5(command_buffer, command_queue, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandFillImageKHR_6(command_buffer, command_queue, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandFillImageKHR_7(command_buffer, command_queue, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandFillImageKHR_8(command_buffer, command_queue, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillImageKHR_5(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillImageKHR_6(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillImageKHR_7(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillImageKHR_8(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillImageKHR_9(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillImageKHR_10(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillImageKHR_11(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR<T>(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; var fill_color: T; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode; where T: record;
+    begin
+      Result := ntv_CommandFillImageKHR_12(command_buffer, command_queue, properties, image, PByte(pointer(@fill_color))^, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    end;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillImageKHR_13(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillImageKHR_14(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandFillImageKHR_15(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandFillImageKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; image: cl_mem; fill_color: pointer; var origin: UIntPtr; var region: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandFillImageKHR_16(command_buffer, command_queue, properties, image, fill_color, origin, region, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandNDRangeKernelKHR_adr := GetProcAddress('clCommandNDRangeKernelKHR');
-    private ntv_CommandNDRangeKernelKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    private ntv_CommandNDRangeKernelKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+    private ntv_CommandNDRangeKernelKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_9 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_10 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_11 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_12 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_13 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_14 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_15 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    private ntv_CommandNDRangeKernelKHR_16 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandNDRangeKernelKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_1(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_2(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_3(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clNDRangeKernelCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_4(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_5(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_6(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_7(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
       ntv_CommandNDRangeKernelKHR_8(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_9(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_10(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_11(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; var global_work_offset: UIntPtr; var global_work_size: UIntPtr; var local_work_size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_12(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_13(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_14(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_15(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandNDRangeKernelKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; kernel: cl_kernel; work_dim: UInt32; global_work_offset: IntPtr; global_work_size: IntPtr; local_work_size: IntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandNDRangeKernelKHR_16(command_buffer, command_queue, properties, kernel, work_dim, global_work_offset, global_work_size, local_work_size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public GetCommandBufferInfoKHR_adr := GetProcAddress('clGetCommandBufferInfoKHR');
     private ntv_GetCommandBufferInfoKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; param_name: clCommandBufferInfo; param_value_size: UIntPtr; var param_value: Byte; var param_value_size_ret: UIntPtr): clErrorCode>(GetCommandBufferInfoKHR_adr);
@@ -3313,96 +3445,56 @@
     end;
     
     public CommandSVMMemcpyKHR_adr := GetProcAddress('clCommandSVMMemcpyKHR');
-    private ntv_CommandSVMMemcpyKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    private ntv_CommandSVMMemcpyKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: array of UInt32; sync_point: array of UInt32; mutable_handle: array of cl_mutable_command): clErrorCode;
-      type PUInt32 = ^UInt32;
-      type PCl_mutable_command = ^cl_mutable_command;
-    begin
-      Result := if (mutable_handle<>nil) and (mutable_handle.Length<>0) then
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], mutable_handle[0]) else
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, mutable_handle[0]) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], mutable_handle[0]) else
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, mutable_handle[0]) else
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, PCl_mutable_command(nil)^) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, PCl_mutable_command(nil)^);
-    end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_2(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_3(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_4(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_5(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_6(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_7(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemcpyKHR_8(command_buffer, command_queue, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandSVMMemcpyKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    private ntv_CommandSVMMemcpyKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemcpyKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_1(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_2(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_3(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_4(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_5(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_6(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_7(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemcpyKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; dst_ptr: IntPtr; src_ptr: IntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemcpyKHR_8(command_buffer, command_queue, properties, dst_ptr, src_ptr, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
     public CommandSVMMemFillKHR_adr := GetProcAddress('clCommandSVMMemFillKHR');
-    private ntv_CommandSVMMemFillKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
-    private ntv_CommandSVMMemFillKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: array of UInt32; sync_point: array of UInt32; mutable_handle: array of cl_mutable_command): clErrorCode;
-      type PUInt32 = ^UInt32;
-      type PCl_mutable_command = ^cl_mutable_command;
-    begin
-      Result := if (mutable_handle<>nil) and (mutable_handle.Length<>0) then
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], mutable_handle[0]) else
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, mutable_handle[0]) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], mutable_handle[0]) else
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, mutable_handle[0]) else
-        if (sync_point_wait_list<>nil) and (sync_point_wait_list.Length<>0) then
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list[0], sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list[0], PUInt32(nil)^, PCl_mutable_command(nil)^) else
-          if (sync_point<>nil) and (sync_point.Length<>0) then
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, PUInt32(nil)^, sync_point[0], PCl_mutable_command(nil)^) else
-            ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, PUInt32(nil)^, PUInt32(nil)^, PCl_mutable_command(nil)^);
-    end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_2(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_3(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_4(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_5(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_6(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; var mutable_handle: cl_mutable_command): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_7(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; sync_point: IntPtr; mutable_handle: IntPtr): clErrorCode :=
-      ntv_CommandSVMMemFillKHR_8(command_buffer, command_queue, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    private ntv_CommandSVMMemFillKHR_1 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_2 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_3 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_4 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_5 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_6 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_7 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode>(CommandSVMMemFillKHR_adr);
+    private ntv_CommandSVMMemFillKHR_8 := GetProcOrNil&<function(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode>(CommandSVMMemFillKHR_adr);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_1(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_2(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_3(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; var properties: clCommandProperties; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_4(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_5(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; var sync_point_wait_list: UInt32; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_6(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; var mutable_handle: cl_mutable_command): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_7(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function CommandSVMMemFillKHR(command_buffer: cl_command_buffer; command_queue: cl_command_queue; properties: IntPtr; svm_ptr: IntPtr; pattern: IntPtr; pattern_size: UIntPtr; size: UIntPtr; num_sync_points_in_wait_list: UInt32; sync_point_wait_list: IntPtr; var sync_point: UInt32; mutable_handle: IntPtr): clErrorCode :=
+      ntv_CommandSVMMemFillKHR_8(command_buffer, command_queue, properties, svm_ptr, pattern, pattern_size, size, num_sync_points_in_wait_list, sync_point_wait_list, sync_point, mutable_handle);
     
   end;
   
@@ -3553,7 +3645,7 @@
       if param_value_validate_size and (param_value_ret_size<>param_value_sz) then
         raise new InvalidOperationException($'Implementation returned a size of {param_value_ret_size} instead of {param_value_sz}');
     end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function GetMutableCommandInfoKHR_MUTABLE_DISPATCH_PROPERTIES_ARRAY(command: cl_mutable_command; var param_value: array of clNDRangeKernelCommandProperties): clErrorCode;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function GetMutableCommandInfoKHR_MUTABLE_DISPATCH_PROPERTIES_ARRAY(command: cl_mutable_command; var param_value: array of clCommandProperties): clErrorCode;
     begin
       var param_value_sz: UIntPtr;
       Result := ntv_GetMutableCommandInfoKHR_3(command, clMutableCommandInfo.MUTABLE_DISPATCH_PROPERTIES_ARRAY, UIntPtr.Zero,nil,param_value_sz);
@@ -3563,13 +3655,13 @@
         param_value := nil;
         exit;
       end;
-      var param_value_temp_res := new clNDRangeKernelCommandProperties[param_value_sz.ToUInt64 div Marshal.SizeOf&<clNDRangeKernelCommandProperties>];
+      var param_value_temp_res := new clCommandProperties[param_value_sz.ToUInt64 div Marshal.SizeOf&<clCommandProperties>];
       Result := GetMutableCommandInfoKHR(command, clMutableCommandInfo.MUTABLE_DISPATCH_PROPERTIES_ARRAY, param_value_sz,param_value_temp_res[0],IntPtr.Zero);
       param_value := param_value_temp_res;
     end;
-    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function GetMutableCommandInfoKHR_MUTABLE_DISPATCH_PROPERTIES_ARRAY(command: cl_mutable_command; param_value_count: UInt32; var param_value: clNDRangeKernelCommandProperties): clErrorCode;
+    public [MethodImpl(MethodImplOptions.AggressiveInlining)] function GetMutableCommandInfoKHR_MUTABLE_DISPATCH_PROPERTIES_ARRAY(command: cl_mutable_command; param_value_count: UInt32; var param_value: clCommandProperties): clErrorCode;
     begin
-      var param_value_sz := new UIntPtr(param_value_count*Marshal.SizeOf&<clNDRangeKernelCommandProperties>);
+      var param_value_sz := new UIntPtr(param_value_count*Marshal.SizeOf&<clCommandProperties>);
       Result := GetMutableCommandInfoKHR(command, clMutableCommandInfo.MUTABLE_DISPATCH_PROPERTIES_ARRAY, param_value_sz,param_value,IntPtr.Zero);
     end;
     public [MethodImpl(MethodImplOptions.AggressiveInlining)] function GetMutableCommandInfoKHR_MUTABLE_DISPATCH_KERNEL(command: cl_mutable_command; var param_value: cl_kernel; param_value_validate_size: boolean := false): clErrorCode;
diff --git a/Packing/Template/LowLvl/OpenCL/Log/All EnumToTypeBinding's.log b/Packing/Template/LowLvl/OpenCL/Log/All EnumToTypeBinding's.log
index 5b7fde37..21a3a63f 100644
--- a/Packing/Template/LowLvl/OpenCL/Log/All EnumToTypeBinding's.log	
+++ b/Packing/Template/LowLvl/OpenCL/Log/All EnumToTypeBinding's.log	
@@ -1296,7 +1296,7 @@ cl_command_queue
 cl_command_buffer
 --- MUTABLE_DISPATCH_PROPERTIES_ARRAY
 !output
-array of clNDRangeKernelCommandProperties
+array of clCommandProperties
 --- MUTABLE_DISPATCH_KERNEL
 !output
 cl_kernel
diff --git a/Packing/Template/LowLvl/OpenCL/Log/All Func's.log b/Packing/Template/LowLvl/OpenCL/Log/All Func's.log
index 6c04159f..f20eea2e 100644
--- a/Packing/Template/LowLvl/OpenCL/Log/All Func's.log	
+++ b/Packing/Template/LowLvl/OpenCL/Log/All Func's.log	
@@ -3777,57 +3777,58 @@ errcode_ret: var clErrorCode
 Result:                       clErrorCode
 command_buffer:               cl_command_buffer
 command_queue:                cl_command_queue
+properties:                   var clCommandProperties const / IntPtr const
 num_sync_points_in_wait_list: UInt32
-sync_point_wait_list:         array of UInt32 const / var UInt32 const / IntPtr const
-sync_point:                   array of UInt32 / var UInt32 / IntPtr
-mutable_handle:               array of cl_mutable_command / var cl_mutable_command / IntPtr
+sync_point_wait_list:         var UInt32 const / IntPtr const
+sync_point:                   var UInt32
+mutable_handle:               var cl_mutable_command / IntPtr
 !ffo
-9
-	clErrorCode | cl_command_buffer | cl_command_queue | UInt32                       | array of UInt32 const | array of UInt32 | array of cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | UInt32                       | var UInt32 const      | var UInt32      | var cl_mutable_command      |
-	clErrorCode | cl_command_buffer | cl_command_queue | UInt32                       | var UInt32 const      | var UInt32      | IntPtr                      |
-	clErrorCode | cl_command_buffer | cl_command_queue | UInt32                       | var UInt32 const      | IntPtr          | var cl_mutable_command      |
-	clErrorCode | cl_command_buffer | cl_command_queue | UInt32                       | var UInt32 const      | IntPtr          | IntPtr                      |
-	clErrorCode | cl_command_buffer | cl_command_queue | UInt32                       | IntPtr const          | var UInt32      | var cl_mutable_command      |
-	clErrorCode | cl_command_buffer | cl_command_queue | UInt32                       | IntPtr const          | var UInt32      | IntPtr                      |
-	clErrorCode | cl_command_buffer | cl_command_queue | UInt32                       | IntPtr const          | IntPtr          | var cl_mutable_command      |
-	clErrorCode | cl_command_buffer | cl_command_queue | UInt32                       | IntPtr const          | IntPtr          | IntPtr                      |
-	----------- | ----------------- | ---------------- | ---------------------------- | --------------------- | --------------- | --------------------------- |
-	            | command_buffer    | command_queue    | num_sync_points_in_wait_list | sync_point_wait_list  | sync_point      | mutable_handle              |
+8
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	----------- | ----------------- | ---------------- | ----------------------------- | ---------------------------- | -------------------- | ---------- | ---------------------- |
+	            | command_buffer    | command_queue    | properties                    | num_sync_points_in_wait_list | sync_point_wait_list | sync_point | mutable_handle         |
 
 # cl::CommandCopyBuffer + KHR
 !ppt
 Result:                       clErrorCode
 command_buffer:               cl_command_buffer
 command_queue:                cl_command_queue
+properties:                   var clCommandProperties const / IntPtr const
 src_buffer:                   cl_mem
 dst_buffer:                   cl_mem
 src_offset:                   UIntPtr
 dst_offset:                   UIntPtr
 size:                         UIntPtr
 num_sync_points_in_wait_list: UInt32
-sync_point_wait_list:         array of UInt32 const / var UInt32 const / IntPtr const
-sync_point:                   array of UInt32 / var UInt32 / IntPtr
-mutable_handle:               array of cl_mutable_command / var cl_mutable_command / IntPtr
+sync_point_wait_list:         var UInt32 const / IntPtr const
+sync_point:                   var UInt32
+mutable_handle:               var cl_mutable_command / IntPtr
 !ffo
-9
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem     | UIntPtr    | UIntPtr    | UIntPtr | UInt32                       | array of UInt32 const | array of UInt32 | array of cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem     | UIntPtr    | UIntPtr    | UIntPtr | UInt32                       | var UInt32 const      | var UInt32      | var cl_mutable_command      |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem     | UIntPtr    | UIntPtr    | UIntPtr | UInt32                       | var UInt32 const      | var UInt32      | IntPtr                      |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem     | UIntPtr    | UIntPtr    | UIntPtr | UInt32                       | var UInt32 const      | IntPtr          | var cl_mutable_command      |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem     | UIntPtr    | UIntPtr    | UIntPtr | UInt32                       | var UInt32 const      | IntPtr          | IntPtr                      |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem     | UIntPtr    | UIntPtr    | UIntPtr | UInt32                       | IntPtr const          | var UInt32      | var cl_mutable_command      |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem     | UIntPtr    | UIntPtr    | UIntPtr | UInt32                       | IntPtr const          | var UInt32      | IntPtr                      |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem     | UIntPtr    | UIntPtr    | UIntPtr | UInt32                       | IntPtr const          | IntPtr          | var cl_mutable_command      |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem     | UIntPtr    | UIntPtr    | UIntPtr | UInt32                       | IntPtr const          | IntPtr          | IntPtr                      |
-	----------- | ----------------- | ---------------- | ---------- | ---------- | ---------- | ---------- | ------- | ---------------------------- | --------------------- | --------------- | --------------------------- |
-	            | command_buffer    | command_queue    | src_buffer | dst_buffer | src_offset | dst_offset | size    | num_sync_points_in_wait_list | sync_point_wait_list  | sync_point      | mutable_handle              |
+8
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem     | cl_mem     | UIntPtr    | UIntPtr    | UIntPtr | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem     | cl_mem     | UIntPtr    | UIntPtr    | UIntPtr | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem     | cl_mem     | UIntPtr    | UIntPtr    | UIntPtr | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem     | cl_mem     | UIntPtr    | UIntPtr    | UIntPtr | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem     | cl_mem     | UIntPtr    | UIntPtr    | UIntPtr | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem     | cl_mem     | UIntPtr    | UIntPtr    | UIntPtr | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem     | cl_mem     | UIntPtr    | UIntPtr    | UIntPtr | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem     | cl_mem     | UIntPtr    | UIntPtr    | UIntPtr | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	----------- | ----------------- | ---------------- | ----------------------------- | ---------- | ---------- | ---------- | ---------- | ------- | ---------------------------- | -------------------- | ---------- | ---------------------- |
+	            | command_buffer    | command_queue    | properties                    | src_buffer | dst_buffer | src_offset | dst_offset | size    | num_sync_points_in_wait_list | sync_point_wait_list | sync_point | mutable_handle         |
 
 # cl::CommandCopyBufferRect + KHR
 !ppt
 Result:                       clErrorCode
 command_buffer:               cl_command_buffer
 command_queue:                cl_command_queue
+properties:                   var clCommandProperties const / IntPtr const
 src_buffer:                   cl_mem
 dst_buffer:                   cl_mem
 src_origin:                   var UIntPtr const / IntPtr const
@@ -3842,23 +3843,32 @@ sync_point_wait_list:         var UInt32 const / IntPtr const
 sync_point:                   var UInt32
 mutable_handle:               var cl_mutable_command / IntPtr
 !ffo
-8
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem     | var UIntPtr const | var UIntPtr const | var UIntPtr const | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem     | var UIntPtr const | var UIntPtr const | var UIntPtr const | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem     | var UIntPtr const | var UIntPtr const | var UIntPtr const | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem     | var UIntPtr const | var UIntPtr const | var UIntPtr const | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem     | IntPtr const      | IntPtr const      | IntPtr const      | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem     | IntPtr const      | IntPtr const      | IntPtr const      | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem     | IntPtr const      | IntPtr const      | IntPtr const      | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem     | IntPtr const      | IntPtr const      | IntPtr const      | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
-	----------- | ----------------- | ---------------- | ---------- | ---------- | ----------------- | ----------------- | ----------------- | ------------- | --------------- | ------------- | --------------- | ---------------------------- | -------------------- | ---------- | ---------------------- |
-	            | command_buffer    | command_queue    | src_buffer | dst_buffer | src_origin        | dst_origin        | region            | src_row_pitch | src_slice_pitch | dst_row_pitch | dst_slice_pitch | num_sync_points_in_wait_list | sync_point_wait_list | sync_point | mutable_handle         |
+16
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem     | cl_mem     | var UIntPtr const | var UIntPtr const | var UIntPtr const | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem     | cl_mem     | var UIntPtr const | var UIntPtr const | var UIntPtr const | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem     | cl_mem     | var UIntPtr const | var UIntPtr const | var UIntPtr const | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem     | cl_mem     | var UIntPtr const | var UIntPtr const | var UIntPtr const | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem     | cl_mem     | IntPtr const      | IntPtr const      | IntPtr const      | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem     | cl_mem     | IntPtr const      | IntPtr const      | IntPtr const      | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem     | cl_mem     | IntPtr const      | IntPtr const      | IntPtr const      | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem     | cl_mem     | IntPtr const      | IntPtr const      | IntPtr const      | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem     | cl_mem     | var UIntPtr const | var UIntPtr const | var UIntPtr const | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem     | cl_mem     | var UIntPtr const | var UIntPtr const | var UIntPtr const | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem     | cl_mem     | var UIntPtr const | var UIntPtr const | var UIntPtr const | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem     | cl_mem     | var UIntPtr const | var UIntPtr const | var UIntPtr const | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem     | cl_mem     | IntPtr const      | IntPtr const      | IntPtr const      | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem     | cl_mem     | IntPtr const      | IntPtr const      | IntPtr const      | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem     | cl_mem     | IntPtr const      | IntPtr const      | IntPtr const      | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem     | cl_mem     | IntPtr const      | IntPtr const      | IntPtr const      | UIntPtr       | UIntPtr         | UIntPtr       | UIntPtr         | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	----------- | ----------------- | ---------------- | ----------------------------- | ---------- | ---------- | ----------------- | ----------------- | ----------------- | ------------- | --------------- | ------------- | --------------- | ---------------------------- | -------------------- | ---------- | ---------------------- |
+	            | command_buffer    | command_queue    | properties                    | src_buffer | dst_buffer | src_origin        | dst_origin        | region            | src_row_pitch | src_slice_pitch | dst_row_pitch | dst_slice_pitch | num_sync_points_in_wait_list | sync_point_wait_list | sync_point | mutable_handle         |
 
 # cl::CommandCopyBufferToImage + KHR
 !ppt
 Result:                       clErrorCode
 command_buffer:               cl_command_buffer
 command_queue:                cl_command_queue
+properties:                   var clCommandProperties const / IntPtr const
 src_buffer:                   cl_mem
 dst_image:                    cl_mem
 src_offset:                   UIntPtr
@@ -3869,23 +3879,32 @@ sync_point_wait_list:         var UInt32 const / IntPtr const
 sync_point:                   var UInt32
 mutable_handle:               var cl_mutable_command / IntPtr
 !ffo
-8
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem    | UIntPtr    | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem    | UIntPtr    | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem    | UIntPtr    | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem    | UIntPtr    | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem    | UIntPtr    | IntPtr const      | IntPtr const      | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem    | UIntPtr    | IntPtr const      | IntPtr const      | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem    | UIntPtr    | IntPtr const      | IntPtr const      | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem     | cl_mem    | UIntPtr    | IntPtr const      | IntPtr const      | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
-	----------- | ----------------- | ---------------- | ---------- | --------- | ---------- | ----------------- | ----------------- | ---------------------------- | -------------------- | ---------- | ---------------------- |
-	            | command_buffer    | command_queue    | src_buffer | dst_image | src_offset | dst_origin        | region            | num_sync_points_in_wait_list | sync_point_wait_list | sync_point | mutable_handle         |
+16
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem     | cl_mem    | UIntPtr    | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem     | cl_mem    | UIntPtr    | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem     | cl_mem    | UIntPtr    | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem     | cl_mem    | UIntPtr    | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem     | cl_mem    | UIntPtr    | IntPtr const      | IntPtr const      | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem     | cl_mem    | UIntPtr    | IntPtr const      | IntPtr const      | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem     | cl_mem    | UIntPtr    | IntPtr const      | IntPtr const      | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem     | cl_mem    | UIntPtr    | IntPtr const      | IntPtr const      | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem     | cl_mem    | UIntPtr    | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem     | cl_mem    | UIntPtr    | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem     | cl_mem    | UIntPtr    | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem     | cl_mem    | UIntPtr    | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem     | cl_mem    | UIntPtr    | IntPtr const      | IntPtr const      | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem     | cl_mem    | UIntPtr    | IntPtr const      | IntPtr const      | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem     | cl_mem    | UIntPtr    | IntPtr const      | IntPtr const      | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem     | cl_mem    | UIntPtr    | IntPtr const      | IntPtr const      | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	----------- | ----------------- | ---------------- | ----------------------------- | ---------- | --------- | ---------- | ----------------- | ----------------- | ---------------------------- | -------------------- | ---------- | ---------------------- |
+	            | command_buffer    | command_queue    | properties                    | src_buffer | dst_image | src_offset | dst_origin        | region            | num_sync_points_in_wait_list | sync_point_wait_list | sync_point | mutable_handle         |
 
 # cl::CommandCopyImage + KHR
 !ppt
 Result:                       clErrorCode
 command_buffer:               cl_command_buffer
 command_queue:                cl_command_queue
+properties:                   var clCommandProperties const / IntPtr const
 src_image:                    cl_mem
 dst_image:                    cl_mem
 src_origin:                   var UIntPtr const / IntPtr const
@@ -3896,23 +3915,32 @@ sync_point_wait_list:         var UInt32 const / IntPtr const
 sync_point:                   var UInt32
 mutable_handle:               var cl_mutable_command / IntPtr
 !ffo
-8
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem    | cl_mem    | var UIntPtr const | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem    | cl_mem    | var UIntPtr const | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem    | cl_mem    | var UIntPtr const | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem    | cl_mem    | var UIntPtr const | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem    | cl_mem    | IntPtr const      | IntPtr const      | IntPtr const      | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem    | cl_mem    | IntPtr const      | IntPtr const      | IntPtr const      | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem    | cl_mem    | IntPtr const      | IntPtr const      | IntPtr const      | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem    | cl_mem    | IntPtr const      | IntPtr const      | IntPtr const      | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
-	----------- | ----------------- | ---------------- | --------- | --------- | ----------------- | ----------------- | ----------------- | ---------------------------- | -------------------- | ---------- | ---------------------- |
-	            | command_buffer    | command_queue    | src_image | dst_image | src_origin        | dst_origin        | region            | num_sync_points_in_wait_list | sync_point_wait_list | sync_point | mutable_handle         |
+16
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem    | cl_mem    | var UIntPtr const | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem    | cl_mem    | var UIntPtr const | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem    | cl_mem    | var UIntPtr const | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem    | cl_mem    | var UIntPtr const | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem    | cl_mem    | IntPtr const      | IntPtr const      | IntPtr const      | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem    | cl_mem    | IntPtr const      | IntPtr const      | IntPtr const      | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem    | cl_mem    | IntPtr const      | IntPtr const      | IntPtr const      | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem    | cl_mem    | IntPtr const      | IntPtr const      | IntPtr const      | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem    | cl_mem    | var UIntPtr const | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem    | cl_mem    | var UIntPtr const | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem    | cl_mem    | var UIntPtr const | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem    | cl_mem    | var UIntPtr const | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem    | cl_mem    | IntPtr const      | IntPtr const      | IntPtr const      | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem    | cl_mem    | IntPtr const      | IntPtr const      | IntPtr const      | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem    | cl_mem    | IntPtr const      | IntPtr const      | IntPtr const      | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem    | cl_mem    | IntPtr const      | IntPtr const      | IntPtr const      | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	----------- | ----------------- | ---------------- | ----------------------------- | --------- | --------- | ----------------- | ----------------- | ----------------- | ---------------------------- | -------------------- | ---------- | ---------------------- |
+	            | command_buffer    | command_queue    | properties                    | src_image | dst_image | src_origin        | dst_origin        | region            | num_sync_points_in_wait_list | sync_point_wait_list | sync_point | mutable_handle         |
 
 # cl::CommandCopyImageToBuffer + KHR
 !ppt
 Result:                       clErrorCode
 command_buffer:               cl_command_buffer
 command_queue:                cl_command_queue
+properties:                   var clCommandProperties const / IntPtr const
 src_image:                    cl_mem
 dst_buffer:                   cl_mem
 src_origin:                   var UIntPtr const / IntPtr const
@@ -3923,51 +3951,68 @@ sync_point_wait_list:         var UInt32 const / IntPtr const
 sync_point:                   var UInt32
 mutable_handle:               var cl_mutable_command / IntPtr
 !ffo
-8
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem    | cl_mem     | var UIntPtr const | var UIntPtr const | UIntPtr    | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem    | cl_mem     | var UIntPtr const | var UIntPtr const | UIntPtr    | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem    | cl_mem     | var UIntPtr const | var UIntPtr const | UIntPtr    | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem    | cl_mem     | var UIntPtr const | var UIntPtr const | UIntPtr    | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem    | cl_mem     | IntPtr const      | IntPtr const      | UIntPtr    | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem    | cl_mem     | IntPtr const      | IntPtr const      | UIntPtr    | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem    | cl_mem     | IntPtr const      | IntPtr const      | UIntPtr    | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem    | cl_mem     | IntPtr const      | IntPtr const      | UIntPtr    | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
-	----------- | ----------------- | ---------------- | --------- | ---------- | ----------------- | ----------------- | ---------- | ---------------------------- | -------------------- | ---------- | ---------------------- |
-	            | command_buffer    | command_queue    | src_image | dst_buffer | src_origin        | region            | dst_offset | num_sync_points_in_wait_list | sync_point_wait_list | sync_point | mutable_handle         |
+16
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem    | cl_mem     | var UIntPtr const | var UIntPtr const | UIntPtr    | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem    | cl_mem     | var UIntPtr const | var UIntPtr const | UIntPtr    | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem    | cl_mem     | var UIntPtr const | var UIntPtr const | UIntPtr    | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem    | cl_mem     | var UIntPtr const | var UIntPtr const | UIntPtr    | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem    | cl_mem     | IntPtr const      | IntPtr const      | UIntPtr    | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem    | cl_mem     | IntPtr const      | IntPtr const      | UIntPtr    | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem    | cl_mem     | IntPtr const      | IntPtr const      | UIntPtr    | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem    | cl_mem     | IntPtr const      | IntPtr const      | UIntPtr    | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem    | cl_mem     | var UIntPtr const | var UIntPtr const | UIntPtr    | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem    | cl_mem     | var UIntPtr const | var UIntPtr const | UIntPtr    | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem    | cl_mem     | var UIntPtr const | var UIntPtr const | UIntPtr    | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem    | cl_mem     | var UIntPtr const | var UIntPtr const | UIntPtr    | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem    | cl_mem     | IntPtr const      | IntPtr const      | UIntPtr    | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem    | cl_mem     | IntPtr const      | IntPtr const      | UIntPtr    | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem    | cl_mem     | IntPtr const      | IntPtr const      | UIntPtr    | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem    | cl_mem     | IntPtr const      | IntPtr const      | UIntPtr    | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	----------- | ----------------- | ---------------- | ----------------------------- | --------- | ---------- | ----------------- | ----------------- | ---------- | ---------------------------- | -------------------- | ---------- | ---------------------- |
+	            | command_buffer    | command_queue    | properties                    | src_image | dst_buffer | src_origin        | region            | dst_offset | num_sync_points_in_wait_list | sync_point_wait_list | sync_point | mutable_handle         |
 
 # cl::CommandFillBuffer + KHR
 !ppt
 Result:                       clErrorCode
 command_buffer:               cl_command_buffer
 command_queue:                cl_command_queue
+properties:                   var clCommandProperties const / IntPtr const
 buffer:                       cl_mem
-pattern:                      IntPtr const
+pattern:                      var T const / pointer const
 pattern_size:                 UIntPtr
 offset:                       UIntPtr
 size:                         UIntPtr
 num_sync_points_in_wait_list: UInt32
-sync_point_wait_list:         array of UInt32 const / var UInt32 const / IntPtr const
-sync_point:                   array of UInt32 / var UInt32 / IntPtr
-mutable_handle:               array of cl_mutable_command / var cl_mutable_command / IntPtr
+sync_point_wait_list:         var UInt32 const / IntPtr const
+sync_point:                   var UInt32
+mutable_handle:               var cl_mutable_command / IntPtr
 !ffo
-9
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem | IntPtr const | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | array of UInt32 const | array of UInt32 | array of cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem | IntPtr const | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | var UInt32 const      | var UInt32      | var cl_mutable_command      |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem | IntPtr const | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | var UInt32 const      | var UInt32      | IntPtr                      |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem | IntPtr const | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | var UInt32 const      | IntPtr          | var cl_mutable_command      |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem | IntPtr const | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | var UInt32 const      | IntPtr          | IntPtr                      |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem | IntPtr const | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | IntPtr const          | var UInt32      | var cl_mutable_command      |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem | IntPtr const | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | IntPtr const          | var UInt32      | IntPtr                      |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem | IntPtr const | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | IntPtr const          | IntPtr          | var cl_mutable_command      |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem | IntPtr const | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | IntPtr const          | IntPtr          | IntPtr                      |
-	----------- | ----------------- | ---------------- | ------ | ------------ | ------------ | ------- | ------- | ---------------------------- | --------------------- | --------------- | --------------------------- |
-	            | command_buffer    | command_queue    | buffer | pattern      | pattern_size | offset  | size    | num_sync_points_in_wait_list | sync_point_wait_list  | sync_point      | mutable_handle              |
+16
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem | var T const   | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem | var T const   | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem | var T const   | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem | var T const   | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem | pointer const | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem | pointer const | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem | pointer const | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem | pointer const | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem | var T const   | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem | var T const   | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem | var T const   | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem | var T const   | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem | pointer const | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem | pointer const | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem | pointer const | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem | pointer const | UIntPtr      | UIntPtr | UIntPtr | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	----------- | ----------------- | ---------------- | ----------------------------- | ------ | ------------- | ------------ | ------- | ------- | ---------------------------- | -------------------- | ---------- | ---------------------- |
+	            | command_buffer    | command_queue    | properties                    | buffer | pattern       | pattern_size | offset  | size    | num_sync_points_in_wait_list | sync_point_wait_list | sync_point | mutable_handle         |
 
 # cl::CommandFillImage + KHR
 !ppt
 Result:                       clErrorCode
 command_buffer:               cl_command_buffer
 command_queue:                cl_command_queue
+properties:                   var clCommandProperties const / IntPtr const
 image:                        cl_mem
 fill_color:                   var T const / pointer const
 origin:                       var UIntPtr const
@@ -3977,24 +4022,32 @@ sync_point_wait_list:         var UInt32 const / IntPtr const
 sync_point:                   var UInt32
 mutable_handle:               var cl_mutable_command / IntPtr
 !ffo
-8
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem | var T const   | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem | var T const   | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem | var T const   | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem | var T const   | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem | pointer const | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem | pointer const | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem | pointer const | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | cl_mem | pointer const | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
-	----------- | ----------------- | ---------------- | ------ | ------------- | ----------------- | ----------------- | ---------------------------- | -------------------- | ---------- | ---------------------- |
-	            | command_buffer    | command_queue    | image  | fill_color    | origin            | region            | num_sync_points_in_wait_list | sync_point_wait_list | sync_point | mutable_handle         |
+16
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem | var T const   | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem | var T const   | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem | var T const   | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem | var T const   | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem | pointer const | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem | pointer const | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem | pointer const | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_mem | pointer const | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem | var T const   | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem | var T const   | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem | var T const   | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem | var T const   | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem | pointer const | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem | pointer const | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem | pointer const | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_mem | pointer const | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	----------- | ----------------- | ---------------- | ----------------------------- | ------ | ------------- | ----------------- | ----------------- | ---------------------------- | -------------------- | ---------- | ---------------------- |
+	            | command_buffer    | command_queue    | properties                    | image  | fill_color    | origin            | region            | num_sync_points_in_wait_list | sync_point_wait_list | sync_point | mutable_handle         |
 
 # cl::CommandNDRangeKernel + KHR
 !ppt
 Result:                       clErrorCode
 command_buffer:               cl_command_buffer
 command_queue:                cl_command_queue
-properties:                   var clNDRangeKernelCommandProperties const / IntPtr const
+properties:                   var clCommandProperties const / IntPtr const
 kernel:                       cl_kernel
 work_dim:                     UInt32
 global_work_offset:           var UIntPtr const / IntPtr const
@@ -4005,70 +4058,78 @@ sync_point_wait_list:         var UInt32 const / IntPtr const
 sync_point:                   var UInt32
 mutable_handle:               var cl_mutable_command / IntPtr
 !ffo
-8
-	clErrorCode | cl_command_buffer | cl_command_queue | var clNDRangeKernelCommandProperties const | cl_kernel | UInt32   | var UIntPtr const  | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | var clNDRangeKernelCommandProperties const | cl_kernel | UInt32   | var UIntPtr const  | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
-	clErrorCode | cl_command_buffer | cl_command_queue | var clNDRangeKernelCommandProperties const | cl_kernel | UInt32   | var UIntPtr const  | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | var clNDRangeKernelCommandProperties const | cl_kernel | UInt32   | var UIntPtr const  | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                               | cl_kernel | UInt32   | IntPtr const       | IntPtr const      | IntPtr const      | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                               | cl_kernel | UInt32   | IntPtr const       | IntPtr const      | IntPtr const      | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                               | cl_kernel | UInt32   | IntPtr const       | IntPtr const      | IntPtr const      | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                               | cl_kernel | UInt32   | IntPtr const       | IntPtr const      | IntPtr const      | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
-	----------- | ----------------- | ---------------- | ------------------------------------------ | --------- | -------- | ------------------ | ----------------- | ----------------- | ---------------------------- | -------------------- | ---------- | ---------------------- |
-	            | command_buffer    | command_queue    | properties                                 | kernel    | work_dim | global_work_offset | global_work_size  | local_work_size   | num_sync_points_in_wait_list | sync_point_wait_list | sync_point | mutable_handle         |
+16
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_kernel | UInt32   | var UIntPtr const  | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_kernel | UInt32   | var UIntPtr const  | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_kernel | UInt32   | var UIntPtr const  | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_kernel | UInt32   | var UIntPtr const  | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_kernel | UInt32   | IntPtr const       | IntPtr const      | IntPtr const      | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_kernel | UInt32   | IntPtr const       | IntPtr const      | IntPtr const      | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_kernel | UInt32   | IntPtr const       | IntPtr const      | IntPtr const      | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | cl_kernel | UInt32   | IntPtr const       | IntPtr const      | IntPtr const      | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_kernel | UInt32   | var UIntPtr const  | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_kernel | UInt32   | var UIntPtr const  | var UIntPtr const | var UIntPtr const | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_kernel | UInt32   | var UIntPtr const  | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_kernel | UInt32   | var UIntPtr const  | var UIntPtr const | var UIntPtr const | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_kernel | UInt32   | IntPtr const       | IntPtr const      | IntPtr const      | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_kernel | UInt32   | IntPtr const       | IntPtr const      | IntPtr const      | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_kernel | UInt32   | IntPtr const       | IntPtr const      | IntPtr const      | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | cl_kernel | UInt32   | IntPtr const       | IntPtr const      | IntPtr const      | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	----------- | ----------------- | ---------------- | ----------------------------- | --------- | -------- | ------------------ | ----------------- | ----------------- | ---------------------------- | -------------------- | ---------- | ---------------------- |
+	            | command_buffer    | command_queue    | properties                    | kernel    | work_dim | global_work_offset | global_work_size  | local_work_size   | num_sync_points_in_wait_list | sync_point_wait_list | sync_point | mutable_handle         |
 
 # cl::CommandSVMMemcpy + KHR
 !ppt
 Result:                       clErrorCode
 command_buffer:               cl_command_buffer
 command_queue:                cl_command_queue
+properties:                   var clCommandProperties const / IntPtr const
 dst_ptr:                      IntPtr
 src_ptr:                      IntPtr const
 size:                         UIntPtr
 num_sync_points_in_wait_list: UInt32
-sync_point_wait_list:         array of UInt32 const / var UInt32 const / IntPtr const
-sync_point:                   array of UInt32 / var UInt32 / IntPtr
-mutable_handle:               array of cl_mutable_command / var cl_mutable_command / IntPtr
+sync_point_wait_list:         var UInt32 const / IntPtr const
+sync_point:                   var UInt32
+mutable_handle:               var cl_mutable_command / IntPtr
 !ffo
-9
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr  | IntPtr const | UIntPtr | UInt32                       | array of UInt32 const | array of UInt32 | array of cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr  | IntPtr const | UIntPtr | UInt32                       | var UInt32 const      | var UInt32      | var cl_mutable_command      |
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr  | IntPtr const | UIntPtr | UInt32                       | var UInt32 const      | var UInt32      | IntPtr                      |
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr  | IntPtr const | UIntPtr | UInt32                       | var UInt32 const      | IntPtr          | var cl_mutable_command      |
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr  | IntPtr const | UIntPtr | UInt32                       | var UInt32 const      | IntPtr          | IntPtr                      |
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr  | IntPtr const | UIntPtr | UInt32                       | IntPtr const          | var UInt32      | var cl_mutable_command      |
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr  | IntPtr const | UIntPtr | UInt32                       | IntPtr const          | var UInt32      | IntPtr                      |
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr  | IntPtr const | UIntPtr | UInt32                       | IntPtr const          | IntPtr          | var cl_mutable_command      |
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr  | IntPtr const | UIntPtr | UInt32                       | IntPtr const          | IntPtr          | IntPtr                      |
-	----------- | ----------------- | ---------------- | ------- | ------------ | ------- | ---------------------------- | --------------------- | --------------- | --------------------------- |
-	            | command_buffer    | command_queue    | dst_ptr | src_ptr      | size    | num_sync_points_in_wait_list | sync_point_wait_list  | sync_point      | mutable_handle              |
+8
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | IntPtr  | IntPtr const | UIntPtr | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | IntPtr  | IntPtr const | UIntPtr | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | IntPtr  | IntPtr const | UIntPtr | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | IntPtr  | IntPtr const | UIntPtr | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | IntPtr  | IntPtr const | UIntPtr | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | IntPtr  | IntPtr const | UIntPtr | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | IntPtr  | IntPtr const | UIntPtr | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | IntPtr  | IntPtr const | UIntPtr | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	----------- | ----------------- | ---------------- | ----------------------------- | ------- | ------------ | ------- | ---------------------------- | -------------------- | ---------- | ---------------------- |
+	            | command_buffer    | command_queue    | properties                    | dst_ptr | src_ptr      | size    | num_sync_points_in_wait_list | sync_point_wait_list | sync_point | mutable_handle         |
 
 # cl::CommandSVMMemFill + KHR
 !ppt
 Result:                       clErrorCode
 command_buffer:               cl_command_buffer
 command_queue:                cl_command_queue
+properties:                   var clCommandProperties const / IntPtr const
 svm_ptr:                      IntPtr
 pattern:                      IntPtr const
 pattern_size:                 UIntPtr
 size:                         UIntPtr
 num_sync_points_in_wait_list: UInt32
-sync_point_wait_list:         array of UInt32 const / var UInt32 const / IntPtr const
-sync_point:                   array of UInt32 / var UInt32 / IntPtr
-mutable_handle:               array of cl_mutable_command / var cl_mutable_command / IntPtr
+sync_point_wait_list:         var UInt32 const / IntPtr const
+sync_point:                   var UInt32
+mutable_handle:               var cl_mutable_command / IntPtr
 !ffo
-9
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr  | IntPtr const | UIntPtr      | UIntPtr | UInt32                       | array of UInt32 const | array of UInt32 | array of cl_mutable_command |
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr  | IntPtr const | UIntPtr      | UIntPtr | UInt32                       | var UInt32 const      | var UInt32      | var cl_mutable_command      |
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr  | IntPtr const | UIntPtr      | UIntPtr | UInt32                       | var UInt32 const      | var UInt32      | IntPtr                      |
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr  | IntPtr const | UIntPtr      | UIntPtr | UInt32                       | var UInt32 const      | IntPtr          | var cl_mutable_command      |
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr  | IntPtr const | UIntPtr      | UIntPtr | UInt32                       | var UInt32 const      | IntPtr          | IntPtr                      |
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr  | IntPtr const | UIntPtr      | UIntPtr | UInt32                       | IntPtr const          | var UInt32      | var cl_mutable_command      |
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr  | IntPtr const | UIntPtr      | UIntPtr | UInt32                       | IntPtr const          | var UInt32      | IntPtr                      |
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr  | IntPtr const | UIntPtr      | UIntPtr | UInt32                       | IntPtr const          | IntPtr          | var cl_mutable_command      |
-	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr  | IntPtr const | UIntPtr      | UIntPtr | UInt32                       | IntPtr const          | IntPtr          | IntPtr                      |
-	----------- | ----------------- | ---------------- | ------- | ------------ | ------------ | ------- | ---------------------------- | --------------------- | --------------- | --------------------------- |
-	            | command_buffer    | command_queue    | svm_ptr | pattern      | pattern_size | size    | num_sync_points_in_wait_list | sync_point_wait_list  | sync_point      | mutable_handle              |
+8
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | IntPtr  | IntPtr const | UIntPtr      | UIntPtr | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | IntPtr  | IntPtr const | UIntPtr      | UIntPtr | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | IntPtr  | IntPtr const | UIntPtr      | UIntPtr | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | var clCommandProperties const | IntPtr  | IntPtr const | UIntPtr      | UIntPtr | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | IntPtr  | IntPtr const | UIntPtr      | UIntPtr | UInt32                       | var UInt32 const     | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | IntPtr  | IntPtr const | UIntPtr      | UIntPtr | UInt32                       | var UInt32 const     | var UInt32 | IntPtr                 |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | IntPtr  | IntPtr const | UIntPtr      | UIntPtr | UInt32                       | IntPtr const         | var UInt32 | var cl_mutable_command |
+	clErrorCode | cl_command_buffer | cl_command_queue | IntPtr const                  | IntPtr  | IntPtr const | UIntPtr      | UIntPtr | UInt32                       | IntPtr const         | var UInt32 | IntPtr                 |
+	----------- | ----------------- | ---------------- | ----------------------------- | ------- | ------------ | ------------ | ------- | ---------------------------- | -------------------- | ---------- | ---------------------- |
+	            | command_buffer    | command_queue    | properties                    | svm_ptr | pattern      | pattern_size | size    | num_sync_points_in_wait_list | sync_point_wait_list | sync_point | mutable_handle         |
 
 # cl::CreateCommandBuffer + KHR
 !ppt
@@ -4900,25 +4961,25 @@ param_value:          pointer
 param_value_size_ret: var UIntPtr / IntPtr
 !ffo
 17
-	clErrorCode | cl_mutable_command | clMutableCommandInfo                                     | UIntPtr          | var T                                         | var UIntPtr          |
-	clErrorCode | cl_mutable_command | clMutableCommandInfo                                     | UIntPtr          | var T                                         | IntPtr               |
-	clErrorCode | cl_mutable_command | clMutableCommandInfo                                     | UIntPtr          | pointer                                       | var UIntPtr          |
-	clErrorCode | cl_mutable_command | clMutableCommandInfo                                     | UIntPtr          | pointer                                       | IntPtr               |
-	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_COMMAND_COMMAND_QUEUE       | *                | var cl_command_queue                          | *                    |
-	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_COMMAND_COMMAND_BUFFER      | *                | var cl_command_buffer                         | *                    |
-	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_DISPATCH_PROPERTIES_ARRAY   | *                | var array of clNDRangeKernelCommandProperties | *                    |
-	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_DISPATCH_PROPERTIES_ARRAY   | UInt32           | var clNDRangeKernelCommandProperties          | *                    |
-	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_DISPATCH_KERNEL             | *                | var cl_kernel                                 | *                    |
-	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_DISPATCH_DIMENSIONS         | *                | var UInt32                                    | *                    |
-	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_DISPATCH_GLOBAL_WORK_OFFSET | *                | var array of UIntPtr                          | *                    |
-	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_DISPATCH_GLOBAL_WORK_OFFSET | UInt32           | var UIntPtr                                   | *                    |
-	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_DISPATCH_GLOBAL_WORK_SIZE   | *                | var array of UIntPtr                          | *                    |
-	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_DISPATCH_GLOBAL_WORK_SIZE   | UInt32           | var UIntPtr                                   | *                    |
-	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_DISPATCH_LOCAL_WORK_SIZE    | *                | var array of UIntPtr                          | *                    |
-	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_DISPATCH_LOCAL_WORK_SIZE    | UInt32           | var UIntPtr                                   | *                    |
-	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_COMMAND_COMMAND_TYPE        | *                | var clCommandType                             | *                    |
-	----------- | ------------------ | -------------------------------------------------------- | ---------------- | --------------------------------------------- | -------------------- |
-	            | command            | param_name                                               | param_value_size | param_value                                   | param_value_size_ret |
+	clErrorCode | cl_mutable_command | clMutableCommandInfo                                     | UIntPtr          | var T                            | var UIntPtr          |
+	clErrorCode | cl_mutable_command | clMutableCommandInfo                                     | UIntPtr          | var T                            | IntPtr               |
+	clErrorCode | cl_mutable_command | clMutableCommandInfo                                     | UIntPtr          | pointer                          | var UIntPtr          |
+	clErrorCode | cl_mutable_command | clMutableCommandInfo                                     | UIntPtr          | pointer                          | IntPtr               |
+	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_COMMAND_COMMAND_QUEUE       | *                | var cl_command_queue             | *                    |
+	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_COMMAND_COMMAND_BUFFER      | *                | var cl_command_buffer            | *                    |
+	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_DISPATCH_PROPERTIES_ARRAY   | *                | var array of clCommandProperties | *                    |
+	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_DISPATCH_PROPERTIES_ARRAY   | UInt32           | var clCommandProperties          | *                    |
+	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_DISPATCH_KERNEL             | *                | var cl_kernel                    | *                    |
+	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_DISPATCH_DIMENSIONS         | *                | var UInt32                       | *                    |
+	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_DISPATCH_GLOBAL_WORK_OFFSET | *                | var array of UIntPtr             | *                    |
+	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_DISPATCH_GLOBAL_WORK_OFFSET | UInt32           | var UIntPtr                      | *                    |
+	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_DISPATCH_GLOBAL_WORK_SIZE   | *                | var array of UIntPtr             | *                    |
+	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_DISPATCH_GLOBAL_WORK_SIZE   | UInt32           | var UIntPtr                      | *                    |
+	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_DISPATCH_LOCAL_WORK_SIZE    | *                | var array of UIntPtr             | *                    |
+	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_DISPATCH_LOCAL_WORK_SIZE    | UInt32           | var UIntPtr                      | *                    |
+	clErrorCode | cl_mutable_command | clMutableCommandInfo.MUTABLE_COMMAND_COMMAND_TYPE        | *                | var clCommandType                | *                    |
+	----------- | ------------------ | -------------------------------------------------------- | ---------------- | -------------------------------- | -------------------- |
+	            | command            | param_name                                               | param_value_size | param_value                      | param_value_size_ret |
 
 # cl::GetSemaphoreHandleForType + KHR
 !ppt
diff --git a/Packing/Template/LowLvl/OpenCL/Log/All Group's.log b/Packing/Template/LowLvl/OpenCL/Log/All Group's.log
index 3c95377b..e73fdd6a 100644
--- a/Packing/Template/LowLvl/OpenCL/Log/All Group's.log	
+++ b/Packing/Template/LowLvl/OpenCL/Log/All Group's.log	
@@ -125,6 +125,10 @@
 	SUBMITTED[$0002]
 	QUEUED[$0003]
 
+# clCommandProperties (cl::CommandProperties) : UInt64
+	MUTABLE_DISPATCH_UPDATABLE_FIELDS[$12B1]
+	MUTABLE_DISPATCH_ASSERTS[$12B8]
+
 # clCommandQueueCapabilities (cl::CommandQueueCapabilities) : UInt64 (Bitfield)
 	QUEUE_DEFAULT_CAPABILITIES[0]
 	QUEUE_CAPABILITY_CREATE_SINGLE_QUEUE_EVENTS[1 shl 0]
@@ -1033,10 +1037,6 @@
 	MUTABLE_DISPATCH_ARGUMENTS[1 shl 3]
 	MUTABLE_DISPATCH_EXEC_INFO[1 shl 4]
 
-# clNDRangeKernelCommandProperties (cl::NDRangeKernelCommandProperties) : UInt64
-	MUTABLE_DISPATCH_UPDATABLE_FIELDS[$12B1]
-	MUTABLE_DISPATCH_ASSERTS[$12B8]
-
 # clPipeInfo (cl::PipeInfo) : UInt32
 	PIPE_PACKET_SIZE[$1120]
 	PIPE_MAX_PACKETS[$1121]
diff --git a/Packing/Template/LowLvl/OpenCL/Log/All ObjPropList's.log b/Packing/Template/LowLvl/OpenCL/Log/All ObjPropList's.log
index eef61ab9..bdba18a5 100644
--- a/Packing/Template/LowLvl/OpenCL/Log/All ObjPropList's.log	
+++ b/Packing/Template/LowLvl/OpenCL/Log/All ObjPropList's.log	
@@ -9,6 +9,14 @@ clCommandBufferFlags
 !type
 clMutableDispatchAsserts
 
+# clCommandProperties
+--- MUTABLE_DISPATCH_UPDATABLE_FIELDS
+!type
+clMutableDispatchFields
+--- MUTABLE_DISPATCH_ASSERTS
+!type
+clMutableDispatchAsserts
+
 # clContextProperties
 --- CONTEXT_PLATFORM
 !type
@@ -127,14 +135,6 @@ IntPtr
 !type
 IntPtr
 
-# clNDRangeKernelCommandProperties
---- MUTABLE_DISPATCH_UPDATABLE_FIELDS
-!type
-clMutableDispatchFields
---- MUTABLE_DISPATCH_ASSERTS
-!type
-clMutableDispatchAsserts
-
 # clQueueProperties
 --- QUEUE_PRIORITY
 !type
diff --git a/Packing/Template/LowLvl/OpenCL/Types.Interface.template b/Packing/Template/LowLvl/OpenCL/Types.Interface.template
index 9e6a0f2f..4c731404 100644
--- a/Packing/Template/LowLvl/OpenCL/Types.Interface.template
+++ b/Packing/Template/LowLvl/OpenCL/Types.Interface.template
@@ -435,6 +435,25 @@
     
   end;
   
+  ///
+  clCommandProperties = record
+    public val: UInt64;
+    public constructor(val: UInt64) := self.val := val;
+    
+    public static property MUTABLE_DISPATCH_UPDATABLE_FIELDS: clCommandProperties read new clCommandProperties($12B1);
+    public static property MUTABLE_DISPATCH_ASSERTS:          clCommandProperties read new clCommandProperties($12B8);
+    
+    public function ToString: string; override;
+    begin
+      if MUTABLE_DISPATCH_UPDATABLE_FIELDS = self then
+        Result := 'MUTABLE_DISPATCH_UPDATABLE_FIELDS' else
+      if MUTABLE_DISPATCH_ASSERTS = self then
+        Result := 'MUTABLE_DISPATCH_ASSERTS' else
+        Result := $'clCommandProperties[{self.val}]';
+    end;
+    
+  end;
+  
   ///
   clCommandQueueCapabilities = record
     public val: UInt64;
@@ -4541,25 +4560,6 @@
     
   end;
   
-  ///
-  clNDRangeKernelCommandProperties = record
-    public val: UInt64;
-    public constructor(val: UInt64) := self.val := val;
-    
-    public static property MUTABLE_DISPATCH_UPDATABLE_FIELDS: clNDRangeKernelCommandProperties read new clNDRangeKernelCommandProperties($12B1);
-    public static property MUTABLE_DISPATCH_ASSERTS:          clNDRangeKernelCommandProperties read new clNDRangeKernelCommandProperties($12B8);
-    
-    public function ToString: string; override;
-    begin
-      if MUTABLE_DISPATCH_UPDATABLE_FIELDS = self then
-        Result := 'MUTABLE_DISPATCH_UPDATABLE_FIELDS' else
-      if MUTABLE_DISPATCH_ASSERTS = self then
-        Result := 'MUTABLE_DISPATCH_ASSERTS' else
-        Result := $'clNDRangeKernelCommandProperties[{self.val}]';
-    end;
-    
-  end;
-  
   ///
   clPipeInfo = record
     public val: UInt32;