roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
<meta content="groff -Thtml, see www.gnu.org" name="generator">
roentgen b75cab
<meta content="text/css" name="Content-Style">
roentgen b75cab
<title>TIFFCROP</title>
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

TIFFCROP

roentgen b75cab
NAME
roentgen b75cab
SYNOPSIS
roentgen b75cab
DESCRIPTION
roentgen b75cab
OPTIONS
roentgen b75cab
EXAMPLES
roentgen b75cab
SEE ALSO
roentgen b75cab
roentgen b75cab

roentgen b75cab
roentgen b75cab

NAME

roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

tiffcrop − copy (and possibly convert and crop or

roentgen b75cab
process) a <small>TIFF</small> file

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

SYNOPSIS

roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

tiffcrop [ options ] src1.tif ...

roentgen b75cab
srcN.tif dst.tif

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

DESCRIPTION

roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

tiffcrop combines one or more files created

roentgen b75cab
according to the Tag Image File Format, Revision 6.0 into a
roentgen b75cab
single <small>TIFF</small> file. The output file may be
roentgen b75cab
compressed using a different algorithm than the input files.
roentgen b75cab
tiffcrop is most often used to extract portions of an
roentgen b75cab
image for processing with bar code recognizer or OCR
roentgen b75cab
software when that software cannot restrict the region of
roentgen b75cab
interest to a specific portion of the image or to improve
roentgen b75cab
efficiency when the regions of interest must be rotated.

roentgen b75cab
roentgen b75cab

By default, tiffcrop will copy all the understood

roentgen b75cab
tags in a <small>TIFF</small> directory of an input file to
roentgen b75cab
the associated directory in the output file.

roentgen b75cab
roentgen b75cab

tiffcrop can be used to reorganize the storage

roentgen b75cab
characteristics of data in a file, and it will alter or
roentgen b75cab
convert the image data content as specified at the same
roentgen b75cab
time, unlike tiffcp.

roentgen b75cab
roentgen b75cab

tiffcrop will behave exactly like tiffcp if none

roentgen b75cab
of the new options are specified.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

OPTIONS

roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−N odd|even|#,#-#,#|last

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

sequences and ranges of images within file to process.

roentgen b75cab
The words odd or even may be used to specify
roentgen b75cab
all odd or even numbered images. The word last may be
roentgen b75cab
used in place of a number in the sequence to indicate the
roentgen b75cab
final image in the file without knowing how many images
roentgen b75cab
there are. Ranges of images may be specified with a dash and
roentgen b75cab
multiple sets can be indicated by joining them in a
roentgen b75cab
comma-separated list. e.g.. use −N 1,5-7,last
roentgen b75cab
to process the 1st, 5th through 7th, and final image in the
roentgen b75cab
file.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−E top|bottom|left|right

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

use the top, bottom, left, or right edge as origin

roentgen b75cab
reference for width and length of crop regions. May be
roentgen b75cab
abbreviated to first letter.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−U in|cm|px

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

units to apply to dimensions for margins and crop

roentgen b75cab
regions. Inches or centimeters are converted to pixels using
roentgen b75cab
the resolution unit specified in the TIFF file (which
roentgen b75cab
defaults to inches if not specified in the IFD).

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−m #,#,#,#

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

margins to be removed from the image. The order must be

roentgen b75cab
top, left, bottom, right with only commas separating the
roentgen b75cab
elements of the list. Margins are scaled according to the
roentgen b75cab
current units and removed before any other extractions are
roentgen b75cab
computed. Capital M was in use.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="5" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−X #

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

horizontal (X-axis) dimension of a region to extract

roentgen b75cab
relative to the specified origin reference. If the origin is
roentgen b75cab
the top or bottom edge, the X axis value will be assumed to
roentgen b75cab
start at the left edge.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−Y #

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

vertical (Y-axis) dimension of a region to extract

roentgen b75cab
relative to the specified origin reference. If the origin is
roentgen b75cab
the left or right edge, the Y axis value will be assumed to
roentgen b75cab
start at the top.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−Z #:#,#:#

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

zones of the image designated as position X of Y equal

roentgen b75cab
sized portions measured from the reference edge, e.g. 1:3
roentgen b75cab
would be first third of the image starting from the
roentgen b75cab
reference edge minus any margins specified for the confining
roentgen b75cab
edges. Multiple zones can be specified as a comma separated
roentgen b75cab
list but they must reference the same edge. To extract the
roentgen b75cab
top quarter and the bottom third of an image you would use
roentgen b75cab
−Z 1:4,3:3.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−F horiz|vert

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

flip, i.e. mirror, the image or extracted region

roentgen b75cab
horizontally or vertically.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−R 90|180|270

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

rotate the image or extracted region 90, 180, or 270

roentgen b75cab
degrees clockwise.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="5" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−I

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

invert the colorspace values for grayscale and bi-level

roentgen b75cab
images. This would be used to correct negative images that
roentgen b75cab
have incorrect PHOTOMETRIC INTERPRETATION tags. No support
roentgen b75cab
for color images.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−b image

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

subtract the following monochrome image from all others

roentgen b75cab
processed. This can be used to remove a noise bias from a
roentgen b75cab
set of images. This bias image is typically an image of
roentgen b75cab
noise the camera saw with its shutter closed. Bias image
roentgen b75cab
support is not available with options for cropping,
roentgen b75cab
rotating, or inverting the image.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="5" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−B

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

Force output to be written with Big-Endian byte order.

roentgen b75cab
This option only has an effect when the output file is
roentgen b75cab
created or overwritten and not when it is appended to.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−C

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

Suppress the use of ‘‘strip

roentgen b75cab
chopping’’ when reading images that have a
roentgen b75cab
single strip/tile of uncompressed data.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−c

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

Specify the compression to use for data written to the

roentgen b75cab
output file: none for no compression, packbits
roentgen b75cab
for PackBits compression, lzw for Lempel-Ziv &
roentgen b75cab
Welch compression, jpeg for baseline JPEG
roentgen b75cab
compression, zip for Deflate compression, g3
roentgen b75cab
for CCITT Group 3 (T.4) compression, and g4 for CCITT
roentgen b75cab
Group 4 (T.6) compression. By default tiffcrop will
roentgen b75cab
compress data according to the value of the
roentgen b75cab
Compression tag found in the source file.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

The <small>CCITT</small> Group 3 and Group 4 compression

roentgen b75cab
algorithms can only be used with bi-level data.

roentgen b75cab
roentgen b75cab

Group 3 compression can be specified together with

roentgen b75cab
several T.4-specific options: 1d for 1-dimensional
roentgen b75cab
encoding, 2d for 2-dimensional encoding, and
roentgen b75cab
fill to force each encoded scanline to be zero-filled
roentgen b75cab
so that the terminating EOL code lies on a byte boundary.
roentgen b75cab
Group 3-specific options are specified by appending a
roentgen b75cab
‘‘:’’-separated list to the
roentgen b75cab
‘‘g3’’ option; e.g. −c
roentgen b75cab
g3:2d:fill to get 2D-encoded data with byte-aligned EOL
roentgen b75cab
codes.

roentgen b75cab
roentgen b75cab

<small>LZW</small> compression can be specified together

roentgen b75cab
with a predictor value. A predictor value of 2 causes
roentgen b75cab
each scanline of the output image to undergo horizontal
roentgen b75cab
differencing before it is encoded; a value of 1 forces each
roentgen b75cab
scanline to be encoded without differencing. LZW-specific
roentgen b75cab
options are specified by appending a
roentgen b75cab
‘‘:’’-separated list to the
roentgen b75cab
‘‘lzw’’ option; e.g. −c
roentgen b75cab
lzw:2 for <small>LZW</small> compression with horizontal
roentgen b75cab
differencing.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="5" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−f

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

Specify the bit fill order to use in writing output

roentgen b75cab
data. By default, tiffcrop will create a new file
roentgen b75cab
with the same fill order as the original. Specifying
roentgen b75cab
−f lsb2msb will force data to be written with
roentgen b75cab
the FillOrder tag set to <small>LSB2MSB,</small> while
roentgen b75cab
−f msb2lsb will force data to be written with
roentgen b75cab
the FillOrder tag set to <small>MSB2LSB.</small>

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−i

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

Ignore non-fatal read errors and continue processing of

roentgen b75cab
the input file.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−l

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

Specify the length of a tile (in pixels).

roentgen b75cab
tiffcrop attempts to set the tile dimensions so that
roentgen b75cab
no more than 8 kilobytes of data appear in a tile.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−L

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

Force output to be written with Little-Endian byte

roentgen b75cab
order. This option only has an effect when the output file
roentgen b75cab
is created or overwritten and not when it is appended
roentgen b75cab
to.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−M

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

Suppress the use of memory-mapped files when reading

roentgen b75cab
images.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−p

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

Specify the planar configuration to use in writing image

roentgen b75cab
data that has one 8-bit sample per pixel. By default,
roentgen b75cab
tiffcrop will create a new file with the same planar
roentgen b75cab
configuration as the original. Specifying −p
roentgen b75cab
contig will force data to be written with multi-sample
roentgen b75cab
data packed together, while −p separate will
roentgen b75cab
force samples to be written in separate planes.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−r

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

Specify the number of rows (scanlines) in each strip of

roentgen b75cab
data written to the output file. By default (or when value
roentgen b75cab
0 is specified), tiffcrop attempts to set the
roentgen b75cab
rows/strip that no more than 8 kilobytes of data appear in a
roentgen b75cab
strip. If you specify special value -1 it will
roentgen b75cab
results in infinite number of the rows per strip. The entire
roentgen b75cab
image will be the one strip in that case.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−s

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

Force the output file to be written with data organized

roentgen b75cab
in strips (rather than tiles).

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−t

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

Force the output file to be written with data organized

roentgen b75cab
in tiles (rather than strips). options can be used to force
roentgen b75cab
the resultant image to be written as strips or tiles of
roentgen b75cab
data, respectively.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−w

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

Specify the width of a tile (in pixels). tiffcrop

roentgen b75cab
attempts to set the tile dimensions so that no more than 8
roentgen b75cab
kilobytes of data appear in a tile. tiffcrop attempts
roentgen b75cab
to set the tile dimensions so that no more than 8 kilobytes
roentgen b75cab
of data appear in a tile.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

−,={character}

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

substitute {character} for ’,’ in parsing

roentgen b75cab
image directory indices in files. This is necessary if
roentgen b75cab
filenames contain commas. Note that ’,=’ with
roentgen b75cab
whitespace immediately following will disable the special
roentgen b75cab
meaning of the ’,’ entirely. See examples.

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

EXAMPLES

roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

The following concatenates two files and writes the

roentgen b75cab
result using <small>LZW</small> encoding:

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
tiffcrop -c lzw a.tif b.tif result.tif
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

To convert a G3 1d-encoded <small>TIFF</small> to a

roentgen b75cab
single strip of G4-encoded data the following might be
roentgen b75cab
used:

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
tiffcrop -c g4 -r 10000 g3.tif g4.tif
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

(1000 is just a number that is larger than the number of

roentgen b75cab
rows in the source file.)

roentgen b75cab
roentgen b75cab

To extract a selected set of images from a multi-image

roentgen b75cab
TIFF file use the -N option described above. Thus, to copy
roentgen b75cab
the 1st and 3rd images of image file "album.tif"
roentgen b75cab
to "result.tif":

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
tiffcrop -N 1,3 album.tif result.tif
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

Given file "CCD.tif" whose first image is a

roentgen b75cab
noise bias followed by images which include that bias,
roentgen b75cab
subtract the noise from all those images following it (while
roentgen b75cab
decompressing) with the command:

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
tiffcrop -c none -b CCD.tif CCD.tif -d 2 result.tif
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

SEE ALSO

roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
       cols="2" cellspacing="0" cellpadding="0">
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab

pal2rgb(1), tiffinfo(1), tiffcmp(1),

roentgen b75cab
tiffcp(1), tiffmedian(1), tiffsplit(1),
roentgen b75cab
libtiff(3TIFF)

roentgen b75cab
roentgen b75cab

Libtiff library home page:

roentgen b75cab
http://www.remotesensing.org/libtiff/

roentgen b75cab
roentgen b75cab
roentgen b75cab

roentgen b75cab
roentgen b75cab