From 004182a12275452e2d4cf6621514a2ce086829b6 Mon Sep 17 00:00:00 2001 From: Ryan Oldenburg Date: Fri, 26 Feb 2021 19:10:48 -0600 Subject: [PATCH 1/4] simpler + out of bounds color for image blur --- src/pixie/images.nim | 60 +++++++++++++++++++------------- src/pixie/masks.nim | 47 ++++++++++++------------- tests/images/imageblur20.png | Bin 6088 -> 5825 bytes tests/images/imageblur20oob.png | Bin 0 -> 4101 bytes tests/images/maskblur20.png | Bin 2372 -> 2257 bytes tests/test_images.nim | 7 ++++ 6 files changed, 64 insertions(+), 50 deletions(-) create mode 100644 tests/images/imageblur20oob.png diff --git a/src/pixie/images.nim b/src/pixie/images.nim index 008319c..8493a77 100644 --- a/src/pixie/images.nim +++ b/src/pixie/images.nim @@ -317,7 +317,7 @@ proc invert*(target: Image | Mask) = for j in i ..< target.data.len: target.data[j] = (255 - target.data[j]).uint8 -proc blur*(image: Image, radius: float32) = +proc blur*(image: Image, radius: float32, outOfBounds = ColorRGBX()) = ## Applies Gaussian blur to the image given a radius. let radius = round(radius).int if radius == 0: @@ -354,18 +354,23 @@ proc blur*(image: Image, radius: float32) = for y in 0 ..< image.height: for x in 0 ..< image.width: var values: array[4, uint32] - if image.inside(x - radius, y) and image.inside(x + radius, y): - for step in -radius .. radius: - let - sample = image.getRgbaUnsafe(x + step, y) - a = lookup[step + radius].uint32 - values += sample * a - else: - for step in -radius .. radius: - let - sample = image[x + step, y] - a = lookup[step + radius].uint32 - values += sample * a + for xx in x - radius ..< min(x + radius, 0): + let + sample = outOfBounds + a = lookup[xx - x + radius].uint32 + values += sample * a + + for xx in max(x - radius, 0) ..< min(x + radius, image.width): + let + sample = image.getRgbaUnsafe(xx, y) + a = lookup[xx - x + radius].uint32 + values += sample * a + + for xx in max(x - radius, image.width) ..< x + radius: + let + sample = outOfBounds + a = lookup[xx - x + radius].uint32 + values += sample * a blurX.setRgbaUnsafe(x, y, values.rgbx()) @@ -373,18 +378,23 @@ proc blur*(image: Image, radius: float32) = for y in 0 ..< image.height: for x in 0 ..< image.width: var values: array[4, uint32] - if image.inside(x, y - radius) and image.inside(x, y + radius): - for step in -radius .. radius: - let - sample = blurX.getRgbaUnsafe(x, y + step) - a = lookup[step + radius].uint32 - values += sample * a - else: - for step in -radius .. radius: - let - sample = blurX[x, y + step] - a = lookup[step + radius].uint32 - values += sample * a + for yy in y - radius ..< min(y + radius, 0): + let + sample = outOfBounds + a = lookup[yy - y + radius].uint32 + values += sample * a + + for yy in max(y - radius, 0) ..< min(y + radius, image.height): + let + sample = blurX.getRgbaUnsafe(x, yy) + a = lookup[yy - y + radius].uint32 + values += sample * a + + for yy in max(y - radius, image.height) ..< y + radius: + let + sample = outOfBounds + a = lookup[yy - y + radius].uint32 + values += sample * a image.setRgbaUnsafe(x, y, values.rgbx()) diff --git a/src/pixie/masks.nim b/src/pixie/masks.nim index 57f14ee..57ca1ef 100644 --- a/src/pixie/masks.nim +++ b/src/pixie/masks.nim @@ -167,18 +167,17 @@ proc blur*(mask: Mask, radius: float32, outOfBounds: uint8 = 0) = for y in 0 ..< mask.height: for x in 0 ..< mask.width: var value: uint32 - if mask.inside(x - radius, y) and mask.inside(x + radius, y): - for step in -radius .. radius: - let sample = mask.getValueUnsafe(x + step, y) - value += sample * lookup[step + radius].uint32 - else: - for step in -radius .. radius: - var sample: uint32 - if mask.inside(x + step, y): - sample = mask.getValueUnsafe(x + step, y) - else: - sample = outOfBounds - value += sample * lookup[step + radius].uint32 + for xx in x - radius ..< min(x + radius, 0): + let sample = outOfBounds + value += sample * lookup[xx - x + radius].uint32 + + for xx in max(x - radius, 0) ..< min(x + radius, mask.width): + let sample = mask.getValueUnsafe(xx, y) + value += sample * lookup[xx - x + radius].uint32 + + for xx in max(x - radius, mask.width) ..< x + radius: + let sample = outOfBounds + value += sample * lookup[xx - x + radius].uint32 blurX.setValueUnsafe(x, y, (value div 1024 div 255).uint8) @@ -186,19 +185,17 @@ proc blur*(mask: Mask, radius: float32, outOfBounds: uint8 = 0) = for y in 0 ..< mask.height: for x in 0 ..< mask.width: var value: uint32 - if mask.inside(x, y - radius) and mask.inside(x, y + radius): - for step in -radius .. radius: - let sample = blurX.getValueUnsafe(x, y + step) - value += sample * lookup[step + radius].uint32 - else: - for step in -radius .. radius: - var sample: uint32 - if blurX.inside(x, y + step): - sample = blurX.getValueUnsafe(x, y + step) - else: - sample = outOfBounds - let a = lookup[step + radius].uint32 - value += sample * a + for yy in y - radius ..< min(y + radius, 0): + let sample = outOfBounds + value += sample * lookup[yy - y + radius].uint32 + + for yy in max(y - radius, 0) ..< min(y + radius, mask.height): + let sample = blurX.getValueUnsafe(x, yy) + value += sample * lookup[yy - y + radius].uint32 + + for yy in max(y - radius, mask.height) ..< y + radius: + let sample = outOfBounds + value += sample * lookup[yy - y + radius].uint32 mask.setValueUnsafe(x, y, (value div 1024 div 255).uint8) diff --git a/tests/images/imageblur20.png b/tests/images/imageblur20.png index 9704d36b3f3cd7358738f1373696f4ea7b83dd6b..828c71e00b980da8ae2519b444a14bf4f788d1d7 100644 GIT binary patch literal 5825 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 LwwC4Qo|pd*)y3`E diff --git a/tests/images/imageblur20oob.png b/tests/images/imageblur20oob.png new file mode 100644 index 0000000000000000000000000000000000000000..f964ef0080b078d2a43ddabafdac2eb1b732d0e8 GIT binary patch literal 4101 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 Uj}WGES^xk507*qoM6N<$g4-e-6aWAK delta 2362 zcmV-A3B~r&5yTRZBYz1CNklSJyy8ky*Okw%gW_W$ zwQX~W4qbo3nZy*FE(!=Z>bkiB^Dwy1gQoZ)iBA!l^k__Q!+)Z$_>~Lb;9!uQ0tY3Y zMO|TEBp%wP(QySdoE&ORAc}*Sk^~MM<=KVFR*x4Xji({cLLm#xl3_CC(YAWR z(O!_KYh0Ru=}?q$AQ1zA1RDum%Tq@Jq)dSGfR%{D(=D)*AViY61Rn`q+qPZT^3eMX zey~pY%wf?qD}S-XAe1CQ0ZZ7z{43~3pVzcGEC-r|g2c{(LziMj=r!sk-gYJrZQ-!E zJ{iU{37Nzc;%FK!?_{^{yT0rDc)`5U^PWQ!lE>t1+4Y!Ss)7U-WIzE!C);4?`@tUu zJ_=BGU60QcnnZ3T%E#J+0#t_zEgf#(&8gdAvzNn;LK z*8o!>D@o2$Ja7hvP4Up<2$K+cbI4uBR#n>;JVrr6K&(Xm9)`!`!Qq!9N05l6lM)J1 zv&TLMWPgDmiO$Qc9P8W-lUo3O%>aygUGv1p5U%N$~m z7!m;Y6`(#r+mTx8zFW0!+lmszpo{?|5}|2mSbsevlJNF;le>at=yx^UKu>|AC9}xa z%@ivX9GRmep=T?DAyICjBXSG#PTK(43kPir4k$7p!C!%02|*DDb*La%#hapm2i0Z* z>Yn(jbrnj*x-NRIl9NNSlfa?wOJZ6_ILpznal(*5t7ajot9q+8saTd}UDib$r1M1y zDSxcKWp52~*6`-yAWoir00vYz=1hHo!hjHW-H}l5xMAq+F44$Ykg$U6N)ic+2qBk( zWto>{me+{U4GCREF;TZA;1CdSaX=6YJ7|=;iGxTWVxAcnq~NWqlBRCBG}Vb|!dU|X zNpI{6$R><khC_J;he_snnMpEA z{*I(+*gddZ;U!eyEG@lB1-6CQ&{2fzCXRWYc!m-Qxg}{ECfxTuC9b2F5@i$(y&w_b z*w$s8S3EW8;kZza_as(Ax>6fRp#~j~a<`}|r#>p;v8~Iz$o>QkT9m^tNl=nkcYk|J zIur^TXaYji14&p#V-n;s<<|!!E#6}O!b1h(bzH8(wh%j$jqC+t08&B{e@KE7N`s)g zCsH0LpeZDfnV6wZp#=LQBjNuFiIrp$!j8L0^TYuOM<|&wZ@ebqdNP=h&};EkNn&3` zyan84CFE~OVjZQoq6>2!Hq=(2NqEB)d z*>&H$xaUHts2bT6QTOZ}`p&f&g-DSLR5T4;$u&>Ym@rLVQTQ=6`(ksaz7mZkTBElQ zQSJM`PWAZUnCbIDLLR@ac>2mtLSu=gT{`GoG@kMgEpnJ_?!e5jEfR&hV8CyAOYHrwVkN5o}Wk*^@WvvoOnDnPM;{Lx$V>O2V0I}xl%lux@J;m z5;k$PtrYhsO!Ks$WI+fQfq&9nY#|jC%xfiq!#5l9`Vo+;i26LCBSHB!QzkFmMSihS zCH4v7EQFA=3WY#$*3zxETeBJythO#a}g5AQOWmnHMlf zoFxJw&*$`v+{z19l9FOVJu3FlFzmh}$$wySYxQlSKqldjlYpN9 zG8_+9zk3q-h~#o}+&KtI7LrKBA(u70b?VAl2*F!ea2yPr#UYSa%3pFL!VX9HE0hp- zaRj83+%?B?h&c!X0&nnTcGk*W57`hh2?ETc7yYk|Lcc_vLYE2#hllU*X|(wj5t(Ku zVOu1okimU8{eMHJO#$p=;GE!s1>maSa0X*iNF?|R4QWS0!`jx3R;R#gDKB|6cXbv( z4N-(50Ga!ht06%77wR@C43C1i*G_At(?yT_A64 z#3)FhaDS#8GZe7BUVb zut*G3$p>;|}vP~ z%txj#D!`S*GzLZWDTk-S$RL^%?nnfS5raOz1Tz}r$Mkx}OOgVZ!RsgR-OblG_zKC7 g@lWzC{EEBY0anl3Yp*0A_y7O^07*qoM6N<$f^dX5A^-pY diff --git a/tests/test_images.nim b/tests/test_images.nim index 08fa617..07b83a7 100644 --- a/tests/test_images.nim +++ b/tests/test_images.nim @@ -111,3 +111,10 @@ block: image.fillRect(rect(25, 25, 50, 50), rgba(255, 255, 255, 255)) image.blur(20) image.writeFile("tests/images/imageblur20.png") + +block: + let image = newImage(100, 100) + image.fill(rgba(0, 0, 0, 255)) + image.fillRect(rect(25, 25, 50, 50), rgba(255, 255, 255, 255)) + image.blur(20, rgba(0, 0, 0, 255)) + image.writeFile("tests/images/imageblur20oob.png") From 01b353f9038ac534ec309e9f252e4c6ca3ce5e77 Mon Sep 17 00:00:00 2001 From: Ryan Oldenburg Date: Fri, 26 Feb 2021 19:21:44 -0600 Subject: [PATCH 2/4] simpler --- src/pixie/images.nim | 32 +++++++------------------------- src/pixie/masks.nim | 18 ++++++------------ 2 files changed, 13 insertions(+), 37 deletions(-) diff --git a/src/pixie/images.nim b/src/pixie/images.nim index 8493a77..f777f2f 100644 --- a/src/pixie/images.nim +++ b/src/pixie/images.nim @@ -327,7 +327,7 @@ proc blur*(image: Image, radius: float32, outOfBounds = ColorRGBX()) = # TODO support offBounds for images. - template `*`(sample: ColorRGBX, a: uint32): array[4, uint32] = + proc `*`(sample: ColorRGBX, a: uint32): array[4, uint32] {.inline.} = [ sample.r * a, sample.g * a, @@ -355,22 +355,13 @@ proc blur*(image: Image, radius: float32, outOfBounds = ColorRGBX()) = for x in 0 ..< image.width: var values: array[4, uint32] for xx in x - radius ..< min(x + radius, 0): - let - sample = outOfBounds - a = lookup[xx - x + radius].uint32 - values += sample * a + values += outOfBounds * lookup[xx - x + radius] for xx in max(x - radius, 0) ..< min(x + radius, image.width): - let - sample = image.getRgbaUnsafe(xx, y) - a = lookup[xx - x + radius].uint32 - values += sample * a + values += image.getRgbaUnsafe(xx, y) * lookup[xx - x + radius] for xx in max(x - radius, image.width) ..< x + radius: - let - sample = outOfBounds - a = lookup[xx - x + radius].uint32 - values += sample * a + values += outOfBounds * lookup[xx - x + radius] blurX.setRgbaUnsafe(x, y, values.rgbx()) @@ -379,22 +370,13 @@ proc blur*(image: Image, radius: float32, outOfBounds = ColorRGBX()) = for x in 0 ..< image.width: var values: array[4, uint32] for yy in y - radius ..< min(y + radius, 0): - let - sample = outOfBounds - a = lookup[yy - y + radius].uint32 - values += sample * a + values += outOfBounds * lookup[yy - y + radius] for yy in max(y - radius, 0) ..< min(y + radius, image.height): - let - sample = blurX.getRgbaUnsafe(x, yy) - a = lookup[yy - y + radius].uint32 - values += sample * a + values += blurX.getRgbaUnsafe(x, yy) * lookup[yy - y + radius] for yy in max(y - radius, image.height) ..< y + radius: - let - sample = outOfBounds - a = lookup[yy - y + radius].uint32 - values += sample * a + values += outOfBounds * lookup[yy - y + radius] image.setRgbaUnsafe(x, y, values.rgbx()) diff --git a/src/pixie/masks.nim b/src/pixie/masks.nim index 57ca1ef..ec8ac7f 100644 --- a/src/pixie/masks.nim +++ b/src/pixie/masks.nim @@ -168,16 +168,13 @@ proc blur*(mask: Mask, radius: float32, outOfBounds: uint8 = 0) = for x in 0 ..< mask.width: var value: uint32 for xx in x - radius ..< min(x + radius, 0): - let sample = outOfBounds - value += sample * lookup[xx - x + radius].uint32 + value += outOfBounds * lookup[xx - x + radius] for xx in max(x - radius, 0) ..< min(x + radius, mask.width): - let sample = mask.getValueUnsafe(xx, y) - value += sample * lookup[xx - x + radius].uint32 + value += mask.getValueUnsafe(xx, y) * lookup[xx - x + radius] for xx in max(x - radius, mask.width) ..< x + radius: - let sample = outOfBounds - value += sample * lookup[xx - x + radius].uint32 + value += outOfBounds * lookup[xx - x + radius] blurX.setValueUnsafe(x, y, (value div 1024 div 255).uint8) @@ -186,16 +183,13 @@ proc blur*(mask: Mask, radius: float32, outOfBounds: uint8 = 0) = for x in 0 ..< mask.width: var value: uint32 for yy in y - radius ..< min(y + radius, 0): - let sample = outOfBounds - value += sample * lookup[yy - y + radius].uint32 + value += outOfBounds * lookup[yy - y + radius] for yy in max(y - radius, 0) ..< min(y + radius, mask.height): - let sample = blurX.getValueUnsafe(x, yy) - value += sample * lookup[yy - y + radius].uint32 + value += blurX.getValueUnsafe(x, yy) * lookup[yy - y + radius] for yy in max(y - radius, mask.height) ..< y + radius: - let sample = outOfBounds - value += sample * lookup[yy - y + radius].uint32 + value += outOfBounds * lookup[yy - y + radius] mask.setValueUnsafe(x, y, (value div 1024 div 255).uint8) From 3b109567e95fa388e600e108a485ac3a921d4ca7 Mon Sep 17 00:00:00 2001 From: Ryan Oldenburg Date: Fri, 26 Feb 2021 19:23:19 -0600 Subject: [PATCH 3/4] remove todo --- examples/blur.png | Bin 90271 -> 92589 bytes examples/shadow.png | Bin 9537 -> 9403 bytes src/pixie/images.nim | 2 -- 3 files changed, 2 deletions(-) diff --git a/examples/blur.png b/examples/blur.png index a56cd1b46c392e97b00b726f975471c0fa933e6b..7cd2b83e7050ff670ae4acac80253bc9db6fd60e 100644 GIT binary patch literal 92589 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 z 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 z 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 sv3tpEdOt6*E*vI8Gh$MpF diff --git a/examples/shadow.png b/examples/shadow.png index 4bcbae370ac513d246a29753e38f91fb9c09dce1..3553a897b5033ac05d1f97be0400d948cf9e62b5 100644 GIT binary patch literal 9403 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 Date: Fri, 26 Feb 2021 19:24:40 -0600 Subject: [PATCH 4/4] 1.0.2 --- docs/pixie.html | 2 +- docs/pixie/blends.html | 2 +- docs/pixie/common.html | 2 +- docs/pixie/fileformats/bmp.html | 2 +- docs/pixie/fileformats/jpg.html | 2 +- docs/pixie/fileformats/png.html | 2 +- docs/pixie/fileformats/svg.html | 2 +- docs/pixie/images.html | 7 ++++--- docs/pixie/images.idx | 2 +- docs/pixie/internal.html | 2 +- docs/pixie/masks.html | 2 +- docs/pixie/paints.html | 2 +- docs/pixie/paths.html | 2 +- docs/theindex.html | 4 ++-- pixie.nimble | 2 +- 15 files changed, 19 insertions(+), 18 deletions(-) diff --git a/docs/pixie.html b/docs/pixie.html index cab9ece..d2fc582 100644 --- a/docs/pixie.html +++ b/docs/pixie.html @@ -538,7 +538,7 @@ Strokes a polygon.

diff --git a/docs/pixie/blends.html b/docs/pixie/blends.html index a3f5abc..ca725e9 100644 --- a/docs/pixie/blends.html +++ b/docs/pixie/blends.html @@ -283,7 +283,7 @@ Is there a blend masking function with SIMD support? diff --git a/docs/pixie/common.html b/docs/pixie/common.html index 24522ff..f1b9a0c 100644 --- a/docs/pixie/common.html +++ b/docs/pixie/common.html @@ -196,7 +196,7 @@ Linearly interpolate between a and b using t. diff --git a/docs/pixie/fileformats/bmp.html b/docs/pixie/fileformats/bmp.html index 3ba126d..d790cad 100644 --- a/docs/pixie/fileformats/bmp.html +++ b/docs/pixie/fileformats/bmp.html @@ -182,7 +182,7 @@ Encodes an image into the BMP file format. diff --git a/docs/pixie/fileformats/jpg.html b/docs/pixie/fileformats/jpg.html index de97893..c754435 100644 --- a/docs/pixie/fileformats/jpg.html +++ b/docs/pixie/fileformats/jpg.html @@ -182,7 +182,7 @@ Encodes Image into a JPEG data string. diff --git a/docs/pixie/fileformats/png.html b/docs/pixie/fileformats/png.html index 1ae53fd..68e8924 100644 --- a/docs/pixie/fileformats/png.html +++ b/docs/pixie/fileformats/png.html @@ -201,7 +201,7 @@ Encodes the mask data into the PNG file format. diff --git a/docs/pixie/fileformats/svg.html b/docs/pixie/fileformats/svg.html index bc25c55..fc64e7b 100644 --- a/docs/pixie/fileformats/svg.html +++ b/docs/pixie/fileformats/svg.html @@ -171,7 +171,7 @@ Render SVG file and return the image. Defaults to the SVG's view box size. diff --git a/docs/pixie/images.html b/docs/pixie/images.html index c9e47b6..b0506df 100644 --- a/docs/pixie/images.html +++ b/docs/pixie/images.html @@ -231,7 +231,7 @@ function main() {
    blur
  • blur,Image,float32
  • + title="blur(image: Image; radius: float32; outOfBounds = ColorRGBX())">blur,Image,float32
    dataIndex @@ -451,7 +451,8 @@ Inverts all of the colors and alpha. -
    proc blur(image: Image; radius: float32) {...}{.raises: [PixieError], tags: [].}
    +
    proc blur(image: Image; radius: float32; outOfBounds = ColorRGBX()) {...}{.
    +    raises: [PixieError], tags: [].}
    Applies Gaussian blur to the image given a radius. @@ -577,7 +578,7 @@ Create a shadow of the image with the offset, spread and blur. diff --git a/docs/pixie/images.idx b/docs/pixie/images.idx index 9d0229e..a89b63a 100644 --- a/docs/pixie/images.idx +++ b/docs/pixie/images.idx @@ -19,7 +19,7 @@ minifyBy2 pixie/images.html#minifyBy2,Image,int images: minifyBy2(image: Image; magnifyBy2 pixie/images.html#magnifyBy2,Image,int images: magnifyBy2(image: Image; power = 1): Image applyOpacity pixie/images.html#applyOpacity,,float32 images: applyOpacity(target: Image | Mask; opacity: float32) invert pixie/images.html#invert images: invert(target: Image | Mask) -blur pixie/images.html#blur,Image,float32 images: blur(image: Image; radius: float32) +blur pixie/images.html#blur,Image,float32 images: blur(image: Image; radius: float32; outOfBounds = ColorRGBX()) newMask pixie/images.html#newMask,Image images: newMask(image: Image): Mask getRgbaSmooth pixie/images.html#getRgbaSmooth,Image,float32,float32 images: getRgbaSmooth(image: Image; x, y: float32; wrapped = false): ColorRGBX draw pixie/images.html#draw,Image,Image,Mat3 images: draw(a, b: Image; mat: Mat3; blendMode = bmNormal) diff --git a/docs/pixie/internal.html b/docs/pixie/internal.html index d08b156..750b4f7 100644 --- a/docs/pixie/internal.html +++ b/docs/pixie/internal.html @@ -178,7 +178,7 @@ Unpack the first 32 bits into 4 rgba(0, 0, 0, value) diff --git a/docs/pixie/masks.html b/docs/pixie/masks.html index 187f214..7eaa940 100644 --- a/docs/pixie/masks.html +++ b/docs/pixie/masks.html @@ -367,7 +367,7 @@ Applies Gaussian blur to the image given a radius. diff --git a/docs/pixie/paints.html b/docs/pixie/paints.html index a8805f9..e140875 100644 --- a/docs/pixie/paints.html +++ b/docs/pixie/paints.html @@ -243,7 +243,7 @@ Angular gradient. diff --git a/docs/pixie/paths.html b/docs/pixie/paths.html index bc5cfea..3fd741e 100644 --- a/docs/pixie/paths.html +++ b/docs/pixie/paths.html @@ -662,7 +662,7 @@ Return elements in pairs: (1st, 2nd), (2nd, 3rd) ... (n - 1, last). diff --git a/docs/theindex.html b/docs/theindex.html index d1c4bad..14839db 100644 --- a/docs/theindex.html +++ b/docs/theindex.html @@ -134,7 +134,7 @@ function main() {
blur:
@@ -921,7 +921,7 @@ function main() { diff --git a/pixie.nimble b/pixie.nimble index cd3cadb..59427fc 100644 --- a/pixie.nimble +++ b/pixie.nimble @@ -1,4 +1,4 @@ -version = "1.0.1" +version = "1.0.2" author = "Andre von Houck and Ryan Oldenburg" description = "Full-featured 2d graphics library for Nim." license = "MIT"