<

How to Send Email Attachments with Oracle

Published on
83,420 Points
65,020 Views
14 Endorsements
Last Modified:
Awarded

How to Send Email Attachments with Oracle PL/SQL 

By Sean D. Stuber


Part I: How to Authenticate to an SMTP server with Oracle PL/SQL.


Oracle introduced the UTL_SMTP package with the release of 8i back in 1999, but up through the current version (11.2.0.1) available on OTN no facility has been added to directly support the sending of attachments.

When 10g came out, Oracle introduced UTL_MAIL which provides a simplified API including minimal support for a single file attachment.  This is a small but helpful step forward, yet the main package, UTL_SMTP, was still left without a convenient means of achieving this common goal.


For simple email needs where you only need to send a single file with content less than 32K bytes, the UTL_MAIL functionality should suffice.  To Oracle's credit, the usage of UTL_MAIL is extremely easy.  There are no open, write and close steps, everything is contained in a single procedure call, including sender, destination, body content and attachment.  Here is an example sending a couple lines of text in an attached file.


BEGIN
    UTL_MAIL.send_attach_varchar2(sender        => :p_from,
                                  recipients    => :p_to,
                                  subject       => 'Test msg',
                                  attachment    => 'Test text 1' || UTL_TCP.crlf || 'Test text 2',
                                  att_inline    => FALSE,
                                  att_filename  => 'test.txt'
                                 );
END;



You can also send binary data,  for example if you have a table of jpeg images stored in RAW columns (or BLOB's of 32K bytes or less) you can do something like the following to send a picture as an attachment to someone.


DECLARE   
    v_raw                    RAW(32767);
BEGIN
    SELECT rawimage
      INTO v_raw
      FROM my_images
     WHERE id = 1;

    UTL_MAIL.send_attach_raw(
        sender          => :p_from,
        recipients      => :p_to,
        subject         => 'Test msg',
        attachment      => v_raw,
        att_inline      => FALSE,
        att_mime_type   => 'image/jpeg',
        att_filename    => 'test.jpg'
    );
END;


With this simplicity, it might seem natural to assume UTL_MAIL is the way to go and not mess around with the more complicated UTL_SMTP syntax.  For trivial cases, it's feasible; but, as mentioned before, this API is limited.  What if you need to send more than one attachment?  What if you want to send more data than will fit in VARCHAR2 or RAW types (each is limited to 32K?)  What if the SMTP server requires extra commands, such as authentication?  Also note,  UTL_MAIL isn't installed automatically when a database is created but UTL_SMTP is.   To install UTL_MAIL your DBA will need to run two scripts: $ORACLE_HOME/rdbms/admin/utlmail.sql and $ORACLE_HOME/rdbms/admin/prvtmail.plb.


So,  while UTL_MAIL has some advantages, its limitations mean you'll likely need to explore the full functionality offered by the UTL_SMTP package and extend it to support attachments.  Also note, the documentation of UTL_MAIL indicates the SMTP servers should be defined with the smtp_out_server initialization parameter, and if it not defined (NULL) then it will default to the value of the db_domain parameter.  There is a bug in UTL_MAIL that prevents this defaulting from working reliably.  At this time I don't know of a patch to address the problem but the easy work around is simply to make sure your smtp_out_server parameter is populated.  Before we dig into the UTL_SMTP package, let's explore the SMTP protocol itself to get a better understanding of what we'll need to do to extend the package to support attachments.



SMTP (Simple Mail Transfer Protocol)


The standard technology for sending email is known as SMTP and is defined originally in RFC821 (http://tools.ietf.org/html/rfc821) and obsoleted and updated several times since then.   While clarification and expansion has occurred through these RFC changes; the basic mechanics have remained the same.  SMTP is a fairly simple protocol.  All communication is in 7-bit ASCII characters on a standard TCP/IP port.  By default this is port 25, but could, in theory, be any available TCP/IP port.  Surprisingly, SMTP doesn't actually support attachments or embedded objects like images.  SMTP only sends plain text.  What you see in email clients that appear as attachments or embedded objects are specially encoded plain text that your email client can decode as jpeg images, mp3 songs, pdf documents, etc.  One of the more common encodings is called Base-64 and the embedding rules are called MIME (Multipurpose Internet Mail Extensions; which is defined in a series of documents initiated with RFC2045 (http://tools.ietf.org/html/rfc2045 )  I won't get into all of the details of MIME and encoding but the basic idea is you include an instruction as part of the email header that tells the client you are going to have MIME elements in the body and define a tag to delineate those elements from the normal text.  Then you encode your non-text elements with Base-64 so they can be sent via SMTP.  The email client (such as Thunderbird, Outlook, Lotus Notes, or web based like Gmail) then reads the tags and parses and displays the elements in whatever form is appropriate to the mime content; such as embedded images for encoded jpg files.  Conceptually that's all there is to it:  define a tag, prefix content with the tag, encode the content if it's not text, and suffix content with the tag. The code to do all of that may appear to be cumbersome; but if you compare to non-attached content you'll see the extra steps really don't add too much extra work.


For example, this block will create a CSV file of all objects you have access to including owner, name, type and date created.  That file will then be appended to the SMTP body as an attachment.  Since the content is text, there is no need for special encoding, wrapping in MIME boundary tags is sufficient.  Note this example not only demonstrates how to embed an object or attachment but also how to exceed the 32K limit of UTL_MAIL.


DECLARE
    v_connection             UTL_SMTP.connection;
    -- mime blocks (the sections of the email body that can become attachments)
    -- must be delimited by a string, this particular string is just an example
    c_mime_boundary CONSTANT VARCHAR2(256) := '-----AABCDEFBBCCC0123456789DE';
    v_clob                   CLOB := EMPTY_CLOB();
    v_len                    INTEGER;
    v_index                  INTEGER;
BEGIN
    -- Build the contents before connecting to the mail server
    -- that way you can begin pumping the data immediately
    -- and not risk an SMTP timeout

    FOR x IN (SELECT *
                FROM all_objects
               WHERE ROWNUM < 20)
    LOOP
        v_clob :=
               v_clob
            || x.owner
            || ','
            || x.object_name
            || ','
            || x.object_type
            || ','
            || TO_CHAR(x.created, 'yyyy-mm-dd hh24:mi:ss')
            || UTL_TCP.crlf;
    END LOOP;

    v_connection := UTL_SMTP.open_connection(:p_smtp_server);
    UTL_SMTP.helo(v_connection, :p_domain);
    UTL_SMTP.mail(v_connection, :p_from);
    UTL_SMTP.rcpt(v_connection, :p_to);
    UTL_SMTP.open_data(v_connection);

    UTL_SMTP.write_data(v_connection, 'From: ' || :p_from || UTL_TCP.crlf);
    UTL_SMTP.write_data(v_connection, 'To: ' || :p_to || UTL_TCP.crlf);
    UTL_SMTP.write_data(v_connection, 'Subject: test subject' || UTL_TCP.crlf);
    UTL_SMTP.write_data(v_connection, 'MIME-Version: 1.0' || UTL_TCP.crlf);

    UTL_SMTP.write_data(
        v_connection,
        'Content-Type: multipart/mixed; boundary="' || c_mime_boundary || '"' || UTL_TCP.crlf
    );
    UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);
    UTL_SMTP.write_data(
        v_connection,
        'This is a multi-part message in MIME format.' || UTL_TCP.crlf
    );

    UTL_SMTP.write_data(v_connection, '--' || c_mime_boundary || UTL_TCP.crlf);
    UTL_SMTP.write_data(v_connection, 'Content-Type: text/plain' || UTL_TCP.crlf);

    -- Set up attachment header
    UTL_SMTP.write_data(
        v_connection,
           'Content-Disposition: attachment; filename="'
        || 'your_file_name.csv'
        || '"'
        || UTL_TCP.crlf
    );
    UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);

    -- Write attachment contents

    v_len := DBMS_LOB.getlength(v_clob);
    v_index := 1;

    WHILE v_index <= v_len
    LOOP
        UTL_SMTP.write_data(v_connection, DBMS_LOB.SUBSTR(v_clob, 32000, v_index));
        v_index := v_index + 32000;
    END LOOP;

    --
    -- End attachment
    UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);
    UTL_SMTP.write_data(v_connection, '--' || c_mime_boundary || '--' || UTL_TCP.crlf);

    UTL_SMTP.close_data(v_connection);
    UTL_SMTP.quit(v_connection);
EXCEPTION
    WHEN OTHERS
    THEN
        DBMS_OUTPUT.put_line(DBMS_UTILITY.format_error_stack);
END;



By comparison,  here's the same block of code, except the data is written directly to the body of the email instead of wrapped as an attachment.


DECLARE
    v_connection UTL_SMTP.connection;
    v_clob       CLOB := EMPTY_CLOB();
    v_len        INTEGER;
    v_index      INTEGER;
BEGIN
    -- Build the contents before connecting to the mail server
    -- that way you can begin pumping the data immediately
    -- and not risk an SMTP timeout

    FOR x IN (SELECT *
                FROM all_objects
               WHERE ROWNUM < 20)
    LOOP
        v_clob :=
               v_clob
            || x.owner
            || ','
            || x.object_name
            || ','
            || x.object_type
            || ','
            || TO_CHAR(x.created, 'yyyy-mm-dd hh24:mi:ss')
            || UTL_TCP.crlf;
    END LOOP;

    v_connection := UTL_SMTP.open_connection(:p_smtp_server);
    UTL_SMTP.helo(v_connection, :p_domain);
    UTL_SMTP.mail(v_connection, :p_from);
    UTL_SMTP.rcpt(v_connection, :p_to);
    UTL_SMTP.open_data(v_connection);

    UTL_SMTP.write_data(v_connection, 'From: ' || :p_from || UTL_TCP.crlf);
    UTL_SMTP.write_data(v_connection, 'To: ' || :p_to || UTL_TCP.crlf);
    UTL_SMTP.write_data(v_connection, 'Subject: test subject' || UTL_TCP.crlf);
    UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);
    v_len := DBMS_LOB.getlength(v_clob);
    v_index := 1;

    WHILE v_index <= v_len
    LOOP
        UTL_SMTP.write_data(v_connection, DBMS_LOB.SUBSTR(v_clob, 32000, v_index));
        v_index := v_index + 32000;
    END LOOP;

    UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);

    UTL_SMTP.close_data(v_connection);
    UTL_SMTP.quit(v_connection);
EXCEPTION
    WHEN OTHERS
    THEN
        DBMS_OUTPUT.put_line(DBMS_UTILITY.format_error_stack);
END;


As you can see, most of the code is the same.  You may note in both examples I constructed a CLOB prior to starting the email rather than iterating through the cursor and writing directly to the SMTP connection.  I have multiple reasons for this design.  First, SMTP servers will often have timeout limits on them.  In this example the query should return fairly quickly, but as general practice this is unreliable because other queries might not.  So rather than open a connection, start a query and then have the connection timeout before getting the data, I make a habit of constructing my content first then initiating the email connections.  I can also check the content by writing to dbms_output or log the content to tables or files instead of or in addition to attempting to send it outside the server via email.  For fixed and/or small content this may not matter but as your email body gets more complex it's something to keep in mind.  The last reason I wrote it this way is as a lead in to some of the wrapper API functionality I will demonstrate later.  Just as UTL_MAIL allows you to send an entire 32K varchar2 attachment in a single step, I will construct a similar routine that will support larger content and if our code already constructs a CLOB then emailing it will be a single procedure call similar to that of the UTL_MAIL.


Embedding multiple objects or attachments


Just as MIME requires some header information to declare how you're going to use it, it also wants to know when you are done.  Thus, if you embed multiple MIME blocks, each block is surrounded by the defined boundary tags.  The last block should have additional information in its tag to indicate the MIME blocks are done and normal email content will resume.  Many email clients are forgiving on this requirement and will simply read MIME blocks until they can't find anymore and don't really look for the end tag; but I don't recommend relying on this practice.  In the example above there is only one attachment so the first attachment is also the last and you can see the boundary is appended after the content and suffixed with two dashes.  The extra dashes are all that is needed to tell MIME you're done embedding blocks.  To send multiple attachments, it's simply a matter of writing the boundary before each block and describing what the content is.  As noted previously, the package provided below includes routines to make the multiple embeddings easier.  Its common practice for the MIME boundary to be a string of hexadecimal digits but it's not strictly necessary.  As seen in the next example, I've changed the boundary literally to the string "the boundary can be almost anything."



DECLARE
    v_connection             UTL_SMTP.connection;
    c_mime_boundary CONSTANT VARCHAR2(256) := 'the boundary can be almost anything';

    v_clob                   CLOB;
    v_len                    INTEGER;
    v_index                  INTEGER;
BEGIN
    SELECT encode_blob_as_clob(blobimage)
      INTO v_clob
      FROM my_images
     WHERE id = 1;

    v_connection := UTL_SMTP.open_connection(:p_smtp_server);
    UTL_SMTP.helo(v_connection, :p_domain);
    UTL_SMTP.mail(v_connection, :p_from);
    UTL_SMTP.rcpt(v_connection, :p_to);
    UTL_SMTP.open_data(v_connection);

    UTL_SMTP.write_data(v_connection, 'From: ' || :p_from || UTL_TCP.crlf);
    UTL_SMTP.write_data(v_connection, 'To: ' || :p_to || UTL_TCP.crlf);
    UTL_SMTP.write_data(v_connection, 'Subject: test blob' || UTL_TCP.crlf);
    UTL_SMTP.write_data(v_connection, 'MIME-Version: 1.0' || UTL_TCP.crlf);

    UTL_SMTP.write_data(
        v_connection,
        'Content-Type: multipart/mixed; boundary="' || c_mime_boundary || '"' || UTL_TCP.crlf
    );
    UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);
    UTL_SMTP.write_data(
        v_connection,
        'This is a multi-part message in MIME format.' || UTL_TCP.crlf
    );

    UTL_SMTP.write_data(v_connection, '--' || c_mime_boundary || UTL_TCP.crlf);
    UTL_SMTP.write_data(v_connection, 'Content-Type: text/plain' || UTL_TCP.crlf);
    UTL_SMTP.write_data(
        v_connection,
        'Content-Disposition: attachment; filename="' || 'my_text_file.txt' || '"' || UTL_TCP.crlf
    );
    UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);

    UTL_SMTP.write_data(v_connection, 'sample text line 1' || UTL_TCP.crlf);
    UTL_SMTP.write_data(v_connection, 'sample text line 2' || UTL_TCP.crlf);

    UTL_SMTP.write_data(v_connection, '--' || c_mime_boundary || UTL_TCP.crlf);
    UTL_SMTP.write_data(
        v_connection,
           'Content-Type: image/jpeg'
        || UTL_TCP.crlf
        || 'Content-Transfer-Encoding: base64'
        || UTL_TCP.crlf
    );

    UTL_SMTP.write_data(
        v_connection,
        'Content-Disposition: attachment; filename="' || 'my blob_file.jpg' || '"' || UTL_TCP.crlf
    );
    UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);

    v_len := DBMS_LOB.getlength(v_clob);
    v_index := 1;

    WHILE v_index <= v_len
    LOOP
        UTL_SMTP.write_data(v_connection, DBMS_LOB.SUBSTR(v_clob, 32000, v_index));
        v_index := v_index + 32000;
    END LOOP;

    UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);
    UTL_SMTP.write_data(v_connection, '--' || c_mime_boundary || '--' || UTL_TCP.crlf);

    UTL_SMTP.close_data(v_connection);
    UTL_SMTP.quit(v_connection);
EXCEPTION
    WHEN OTHERS
    THEN
        DBMS_OUTPUT.put_line(DBMS_UTILITY.format_error_stack);
END;


The encode_blob_as_clob function shown in the previous example is included in the sample code for this article.

It accepts a blob value,  encodes it in Base-64 then writes the encoded data to a CLOB that can then be added to the email body as any other text content would.


Pay attention to your boundaries and your content


The attachments are little more than a complicated CSV or other delimited file.

Each attachment starts when the MIME boundary is found and it ends when the next boundary is reached (or, as noted above, when the email ends, but it is bad practice to leave the attachment list unbounded on the end.)  In the following example,  I send nearly the same information as I did above, except I have reversed the order of the content.  First I write the blob then the text.  Also note, I have included an extra line of text  "here is some text" but the placement of it puts that line within the attachment area of the blob image.


BEGIN
    DECLARE
        v_connection             UTL_SMTP.connection;
        c_mime_boundary CONSTANT VARCHAR2(256) := 'the boundary can be almost anything';

        v_clob                   CLOB;
        v_len                    INTEGER;
        v_index                  INTEGER;
    BEGIN
        SELECT encode_blob_as_clob(blobimage)
          INTO v_clob
          FROM my_images
         WHERE id = 1;

        v_connection := UTL_SMTP.open_connection(:p_smtp_server);
        UTL_SMTP.helo(v_connection, :p_domain);
        UTL_SMTP.mail(v_connection, :p_from);
        UTL_SMTP.rcpt(v_connection, :p_to);
        UTL_SMTP.open_data(v_connection);

        UTL_SMTP.write_data(v_connection, 'From: ' || :p_from || UTL_TCP.crlf);
        UTL_SMTP.write_data(v_connection, 'To: ' || :p_to || UTL_TCP.crlf);
        UTL_SMTP.write_data(v_connection, 'Subject: test blob' || UTL_TCP.crlf);
        UTL_SMTP.write_data(v_connection, 'MIME-Version: 1.0' || UTL_TCP.crlf);

        UTL_SMTP.write_data(
            v_connection,
            'Content-Type: multipart/mixed; boundary="' || c_mime_boundary || '"' || UTL_TCP.crlf
        );
        UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);
        UTL_SMTP.write_data(
            v_connection,
            'This is a multi-part message in MIME format.' || UTL_TCP.crlf
        );

        UTL_SMTP.write_data(v_connection, '--' || c_mime_boundary || UTL_TCP.crlf);
        UTL_SMTP.write_data(
            v_connection,
               'Content-Type: image/jpeg'
            || UTL_TCP.crlf
            || 'Content-Transfer-Encoding: base64'
            || UTL_TCP.crlf
        );

        UTL_SMTP.write_data(
            v_connection,
               'Content-Disposition: attachment; filename="'
            || 'my blob_file.jpg'
            || '"'
            || UTL_TCP.crlf
        );
        UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);

        v_len := DBMS_LOB.getlength(v_clob);
        v_index := 1;

        WHILE v_index <= v_len
        LOOP
            UTL_SMTP.write_data(v_connection, DBMS_LOB.SUBSTR(v_clob, 32000, v_index));
            v_index := v_index + 32000;
        END LOOP;

        UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);

        UTL_SMTP.write_data(v_connection, 'here is some text' || UTL_TCP.crlf);

        UTL_SMTP.write_data(v_connection, '--' || c_mime_boundary || UTL_TCP.crlf);
        UTL_SMTP.write_data(v_connection, 'Content-Type: text/plain' || UTL_TCP.crlf);
        UTL_SMTP.write_data(
            v_connection,
               'Content-Disposition: attachment; filename="'
            || 'my_text_file.txt'
            || '"'
            || UTL_TCP.crlf
        );
        UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);

        UTL_SMTP.write_data(v_connection, 'sample text line 1' || UTL_TCP.crlf);
        UTL_SMTP.write_data(v_connection, 'sample text line 2' || UTL_TCP.crlf);

        UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);
        UTL_SMTP.write_data(v_connection, '--' || c_mime_boundary || '--' || UTL_TCP.crlf);

        UTL_SMTP.close_data(v_connection);
        UTL_SMTP.quit(v_connection);
    EXCEPTION
        WHEN OTHERS
        THEN
            DBMS_OUTPUT.put_line(DBMS_UTILITY.format_error_stack);
    END;
END;


This is erroneous content, but legal syntax.  In this example I've included a jpeg image with text at the end.  However, since the syntax is still legal, the email will send and the recipient should see both attachments.  The jpeg was base64 encoded which produced email content that looked something like this.

(I have abbreviated the jpeg content)

--the boundary can be almost anything
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="my blob_file.jpg"

/9j/4AAQSkZJRgABAQEASABIAAD/2wCEAAQDAwMDAwQDAwQGBAMEBgcFBAQFBwgG
.
.
.
XYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq//2Q==
here is some text
--the boundary can be almost anything
Content-Type: text/plain
Content-Disposition: attachment; filename="my_text_file.txt"

sample text line 1
sample text line 2

--the boundary can be almost anything--


I tested this content by sending to Hotmail and Gmail web based clients as well as a pc Thunderbird client.  All produced the same result.  Both attachments were recognized,  the image was extracted properly and the misplaced text was effectively invisible.  The text was still present but the email client rendering simply read to the end of the base64 content per the encoding declarative.  The base64 content ended at the "==", thus that attachment was interpreted to be complete.  If you look at the raw content you can still see the text is present, but it's not rendered by the clients.  Since this is erroneous but legal content, there is no guarantee as to how your recipients may see the content.  They may get the same results I did, they may get errors, and they may get something else entirely.   Thus it is essential you take care to ensure your attachments are properly bounded and the content between each boundary is correct.


More caveats about email rendering


In most situations, you will have no control over what the recipient's email client will be or how they will have it configured.  If you've ever gotten email that you thought looked strange because it had images in strange places or the text was ill-formatted then you have already seen what happens when the sender expects the receiver's client to behave a certain way and that assumption is false.  So,  you should take that into account when you attempt to format your email structure, especially with respect to your MIME content.   In all examples above I have used "Content-Disposition: attachment" the other option is "Content-Disposition: inline".  "Attachment", as you should have seen already will show up to the client as some sort of file that can be extracted, the exact representation and method of extraction will be dependent of the client.  "Inline" is intended to tell the client to render the MIME content in place.  The most common use for this functionality is with images so you can put pictures within a text body, thus allowing you to see the image as you read the email.  However, not all clients observe the inline disposition reliably, they may still represent the content as an attachment, or they may represent it both inline and as an extractable attachment.    In general I try to avoid in-lining text as MIME content,  if I want text to be in the body of the email I write to the body directly.  I also tend to avoid embedding images or other content as inline.


As an example,  I used the following block to send to different clients.  One rendered the text first then the image, both inline but in reverse order to the way they were sent in the body of the email. Another represented the text both inline and as an attachment, the image was included but, despite the "inline" disposition was rendered as an attachment only.  You will need to experiment with your clients to determine which methods are best supported.


BEGIN
    DECLARE
        v_connection             UTL_SMTP.connection;
        c_mime_boundary CONSTANT VARCHAR2(256) := 'the boundary can be almost anything';

        v_clob                   CLOB;
        v_len                    INTEGER;
        v_index                  INTEGER;
    BEGIN
        SELECT encode_blob_as_clob(blobimage)
          INTO v_clob
          FROM my_images
         WHERE id = 1;

        v_connection := UTL_SMTP.open_connection(:p_smtp_server);
        UTL_SMTP.helo(v_connection, :p_domain);
        UTL_SMTP.mail(v_connection, :p_from);
        UTL_SMTP.rcpt(v_connection, :p_to);
        UTL_SMTP.open_data(v_connection);

        UTL_SMTP.write_data(v_connection, 'From: ' || :p_from || UTL_TCP.crlf);
        UTL_SMTP.write_data(v_connection, 'To: ' || :p_to || UTL_TCP.crlf);
        UTL_SMTP.write_data(v_connection, 'Subject: test blob' || UTL_TCP.crlf);
        UTL_SMTP.write_data(v_connection, 'MIME-Version: 1.0' || UTL_TCP.crlf);

        UTL_SMTP.write_data(
            v_connection,
            'Content-Type: multipart/mixed; boundary="' || c_mime_boundary || '"' || UTL_TCP.crlf
        );
        UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);
        UTL_SMTP.write_data(
            v_connection,
            'This is a multi-part message in MIME format.' || UTL_TCP.crlf
        );

        UTL_SMTP.write_data(v_connection, '--' || c_mime_boundary || UTL_TCP.crlf);
        UTL_SMTP.write_data(
            v_connection,
               'Content-Type: image/jpeg'
            || UTL_TCP.crlf
            || 'Content-Transfer-Encoding: base64'
            || UTL_TCP.crlf
        );

        UTL_SMTP.write_data(v_connection, 'Content-Disposition: inline' || UTL_TCP.crlf);
        UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);

        v_len := DBMS_LOB.getlength(v_clob);
        v_index := 1;

        WHILE v_index <= v_len
        LOOP
            UTL_SMTP.write_data(v_connection, DBMS_LOB.SUBSTR(v_clob, 32000, v_index));
            v_index := v_index + 32000;
        END LOOP;

        UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);

        UTL_SMTP.write_data(v_connection, '--' || c_mime_boundary || UTL_TCP.crlf);
        UTL_SMTP.write_data(v_connection, 'Content-Type: text/plain' || UTL_TCP.crlf);
        UTL_SMTP.write_data(v_connection, 'Content-Disposition: inline' || UTL_TCP.crlf);
        UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);

        UTL_SMTP.write_data(v_connection, 'sample text line 1' || UTL_TCP.crlf);
        UTL_SMTP.write_data(v_connection, 'sample text line 2' || UTL_TCP.crlf);

        UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);
        UTL_SMTP.write_data(v_connection, '--' || c_mime_boundary || '--' || UTL_TCP.crlf);

        UTL_SMTP.close_data(v_connection);
        UTL_SMTP.quit(v_connection);
    EXCEPTION
        WHEN OTHERS
        THEN
            DBMS_OUTPUT.put_line(DBMS_UTILITY.format_error_stack);
    END;
END;


So, even though it may be preferable to occasionally inline attachments, since it's not reliable, you may want to avoid it.



Easy API's


As promised earlier, in the code blocks below are procedures to allow for easier sending of attachments.

First, I'll provide a routine that mimic the structure of the UTL_MAIL routines,  the difference will be that it accept CLOB and BLOB input rather than the smaller VARCHAR2 and RAW.


Using SDSEMAIL.SEND_ATTACH_BLOB and SDSEMAIL.SEND_ATTACH_CLOB is much the same as using UTL_MAIL.SEND_ATTACH_RAW or UTL_MAIL.SEND_ATTACH_TEXT  with the obvious difference that the procedure supports BLOB or CLOB type attachments instead of RAW or VARCHAR2 type.  Similarly the message text is also a CLOB type.


DECLARE   
    v_blob                    blob;
    v_message clob := 'messge text';
BEGIN
    SELECT blobimage
      INTO v_blob
      FROM my_images
     WHERE id = 1;
        
    sdsemail.send_attach_blob(
        p_sender          => :p_from,
        p_recipients      => :p_to,
        p_subject         => 'Test msg',
        p_message => v_message,
        p_attachment      => v_blob,
        p_att_inline      => FALSE,
        p_att_mime_type   => 'image/jpeg',
        p_att_filename    => 'test.jpg'
    );
END;



The SDSEMAIL package also includes routines for more complicated attachment choices.  However, this does require more code.  In the example below I'm creating an email of three MIME blocks.  The first is a plain text message body,  the second is a BLOB image and the third a text file.  Note the "last" parameter is FALSE for the first two, but the text file is TRUE because it is the last mime block in the email.


DECLARE
    v_connection             UTL_SMTP.connection;
    c_mime_boundary CONSTANT VARCHAR2(256) := 'the boundary can be almost anything';
    v_blob                   BLOB;
    v_text                   VARCHAR2(100) := 'This is my test text attachment';
BEGIN
    SELECT blobimage
      INTO v_blob
      FROM my_images
     WHERE id = 1;

    v_connection := UTL_SMTP.open_connection(:p_smtp_server);
    UTL_SMTP.helo(v_connection, :p_domain);
    UTL_SMTP.mail(v_connection, :p_from);
    UTL_SMTP.rcpt(v_connection, :p_to);
    UTL_SMTP.open_data(v_connection);

    UTL_SMTP.write_data(v_connection, 'From: ' || :p_from || UTL_TCP.crlf);
    UTL_SMTP.write_data(v_connection, 'To: ' || :p_to || UTL_TCP.crlf);
    UTL_SMTP.write_data(v_connection, 'Subject: Test attachments' || UTL_TCP.crlf);
    UTL_SMTP.write_data(v_connection, 'MIME-Version: 1.0' || UTL_TCP.crlf);
    
    sdsemail.set_mime_boundary(c_mime_boundary);
    UTL_SMTP.write_data(
        v_connection,
        'Content-Type: ' || sdsemail.multipart_mime_type || UTL_TCP.crlf
    );
    
    UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);

    UTL_SMTP.write_data(
        v_connection,
        'This is a multi-part message in MIME format.' || UTL_TCP.crlf
    );

    sdsemail.begin_mime_block(v_connection);
    UTL_SMTP.write_data(v_connection, 'Test text1' || UTL_TCP.crlf);
    UTL_SMTP.write_data(v_connection, 'Test text2' || UTL_TCP.crlf);
    sdsemail.end_mime_block(v_connection, FALSE);

    sdsemail.attach_blob(
        v_connection,
        v_blob,
        'image/jpeg',
        FALSE,
        'test.jpg',
        FALSE
    );

    sdsemail.attach_text(
        p_connection   => v_connection,
        p_data         => v_text,
        p_inline       => FALSE,
        p_filename     => 'test.txt',
        p_last         => TRUE
    );

    UTL_SMTP.close_data(v_connection);
    UTL_SMTP.quit(v_connection);
EXCEPTION
    WHEN OTHERS
    THEN
        DBMS_OUTPUT.put_line(DBMS_UTILITY.format_error_stack);
END;



Package source code


In addition to the main "SEND" routines that mimic and extend UTL_MAIL, I've also included some logging options that will write to dbms_output, a rolling buffer or v$session.  Furthermore, I've also added the ability to specify a list of servers that will be checked instead of using the SMTP_OUT_SERVER or DB_DOMAIN parameters.  If the list is NULL, then the initialization parameters will be used according to the UTL_MAIL documentation, also note, a NULL SMTP server will cascade over to DB_DOMAIN correctly unlike UTL_MAIL which has a bug in it.


Package header


CREATE OR REPLACE PACKAGE sdsemail
AS
    --                    .///.
    --                   (0 o)
    ---------------0000--(_)--0000---------------
    --
    --  Sean D. Stuber
    --  sean.stuber@gmail.com
    --
    --             oooO      Oooo
    --------------(   )-----(   )---------------
    --             \ (       ) /
    --              \_)     (_/

    SUBTYPE connection IS UTL_SMTP.connection;

    invalid_argument              EXCEPTION;
    invalid_priority              EXCEPTION;

    PRAGMA EXCEPTION_INIT(invalid_argument, -29261);
    PRAGMA EXCEPTION_INIT(invalid_priority, -44101);

    c_log_off            CONSTANT INTEGER := 0;
    c_log_dbms_output    CONSTANT INTEGER := 1;
    c_log_rolling_buffer CONSTANT INTEGER := 2;
    c_log_client_info    CONSTANT INTEGER := 4;
    c_default_verbose    CONSTANT BOOLEAN := FALSE;

    PROCEDURE set_log_options(p_log_options IN INTEGER);

    FUNCTION get_log_options
        RETURN INTEGER;

    PROCEDURE clear_log;

    FUNCTION get_log_text
        RETURN VARCHAR2;

    PROCEDURE set_verbose(p_verbose IN BOOLEAN);

    FUNCTION get_verbose
        RETURN BOOLEAN;

    PROCEDURE write_to_log(v_text IN VARCHAR2, p_verbose IN BOOLEAN DEFAULT FALSE);

    PROCEDURE send(
        p_sender        IN            VARCHAR2,
        p_recipients    IN            VARCHAR2,
        p_cc            IN            VARCHAR2 DEFAULT NULL,
        p_bcc           IN            VARCHAR2 DEFAULT NULL,
        p_subject       IN            VARCHAR2 DEFAULT NULL,
        p_message       IN OUT NOCOPY CLOB,
        p_mime_type     IN            VARCHAR2 DEFAULT 'text/plain;charset=us-ascii',
        p_priority      IN            PLS_INTEGER DEFAULT 3,
        p_replyto       IN            VARCHAR2 DEFAULT NULL,
        p_server_list   IN            VARCHAR2 DEFAULT NULL
    );

    PROCEDURE send_attach_clob(
        p_sender          IN            VARCHAR2,
        p_recipients      IN            VARCHAR2,
        p_cc              IN            VARCHAR2 DEFAULT NULL,
        p_bcc             IN            VARCHAR2 DEFAULT NULL,
        p_subject         IN            VARCHAR2 DEFAULT NULL,
        p_message         IN OUT NOCOPY CLOB,
        p_mime_type       IN            VARCHAR2 DEFAULT 'text/plain;charset=us-ascii',
        p_priority        IN            PLS_INTEGER DEFAULT 3,
        p_attachment      IN OUT NOCOPY CLOB,
        p_att_inline      IN            BOOLEAN DEFAULT TRUE,
        p_att_mime_type   IN            VARCHAR2 DEFAULT 'text/plain;charset=us-ascii',
        p_att_filename    IN            VARCHAR2 DEFAULT NULL,
        p_replyto         IN            VARCHAR2 DEFAULT NULL,
        p_server_list     IN            VARCHAR2 DEFAULT NULL
    );

    PROCEDURE send_attach_blob(
        p_sender          IN            VARCHAR2,
        p_recipients      IN            VARCHAR2,
        p_cc              IN            VARCHAR2 DEFAULT NULL,
        p_bcc             IN            VARCHAR2 DEFAULT NULL,
        p_subject         IN            VARCHAR2 DEFAULT NULL,
        p_message         IN OUT NOCOPY CLOB,
        p_mime_type       IN            VARCHAR2 DEFAULT 'text/plain;charset=us-ascii',
        p_priority        IN            PLS_INTEGER DEFAULT 3,
        p_attachment      IN OUT NOCOPY BLOB,
        p_att_inline      IN            BOOLEAN DEFAULT TRUE,
        p_att_mime_type   IN            VARCHAR2 DEFAULT 'application/octet-stream',
        p_att_filename    IN            VARCHAR2 DEFAULT NULL,
        p_replyto         IN            VARCHAR2 DEFAULT NULL,
        p_server_list     IN            VARCHAR2 DEFAULT NULL
    );

    PROCEDURE set_mime_boundary(p_boundary IN VARCHAR2);

    FUNCTION get_mime_boundary
        RETURN VARCHAR2;

    FUNCTION multipart_mime_type
        RETURN VARCHAR2;

    PROCEDURE attach_text(
        p_connection   IN OUT NOCOPY connection,
        p_data         IN            VARCHAR2,
        p_mime_type    IN            VARCHAR2 DEFAULT 'text/plain;charset=us-ascii',
        p_inline       IN            BOOLEAN DEFAULT TRUE,
        p_filename     IN            VARCHAR2 DEFAULT NULL,
        p_last         IN            BOOLEAN DEFAULT FALSE
    );

    PROCEDURE attach_clob(
        p_connection   IN OUT NOCOPY connection,
        p_data         IN OUT NOCOPY CLOB,
        p_mime_type    IN            VARCHAR2 DEFAULT 'text/plain;charset=us-ascii',
        p_inline       IN            BOOLEAN DEFAULT TRUE,
        p_filename     IN            VARCHAR2 DEFAULT NULL,
        p_last         IN            BOOLEAN DEFAULT FALSE
    );

    PROCEDURE attach_raw(
        p_connection   IN OUT NOCOPY connection,
        p_data         IN            RAW,
        p_mime_type    IN            VARCHAR2 DEFAULT 'application/octet-stream',
        p_inline       IN            BOOLEAN DEFAULT TRUE,
        p_filename     IN            VARCHAR2 DEFAULT NULL,
        p_last         IN            BOOLEAN DEFAULT FALSE
    );

    PROCEDURE attach_blob(
        p_connection   IN OUT NOCOPY connection,
        p_data         IN OUT NOCOPY BLOB,
        p_mime_type    IN            VARCHAR2 DEFAULT 'application/octet-stream',
        p_inline       IN            BOOLEAN DEFAULT TRUE,
        p_filename     IN            VARCHAR2 DEFAULT NULL,
        p_last         IN            BOOLEAN DEFAULT FALSE
    );

    PROCEDURE begin_mime_block(
        p_connection     IN OUT NOCOPY connection,
        p_mime_type      IN            VARCHAR2 DEFAULT 'text/plain;charset=us-ascii',
        p_inline         IN            BOOLEAN DEFAULT TRUE,
        p_filename       IN            VARCHAR2 DEFAULT NULL,
        p_transfer_enc   IN            VARCHAR2 DEFAULT NULL
    );

    PROCEDURE end_mime_block(
        p_connection   IN OUT NOCOPY connection,
        p_last         IN            BOOLEAN DEFAULT FALSE
    );
END sdsemail;


Package Body


CREATE OR REPLACE PACKAGE BODY sdsemail
AS
    --                    .///.
    --                   (0 o)
    ---------------0000--(_)--0000---------------
    --
    --  Sean D. Stuber
    --  sean.stuber@gmail.com
    --
    --             oooO      Oooo
    --------------(   )-----(   )---------------
    --             \ (       ) /
    --              \_)     (_/

    c_base64_line         CONSTANT PLS_INTEGER := 57;
    c_crlf                         VARCHAR2(2) := UTL_TCP.crlf;
    /*
        If a default SMTP server is specified here it will be used when the user doesn't specify a server list to try
        instead of checking smtp_out_server and db_domain initialization parameters.

    */
    c_default_smtp_server CONSTANT VARCHAR2(100) := NULL;
    c_default_smtp_port   CONSTANT INTEGER := 25;

    g_boundary                     VARCHAR2(256);

    /* Logging/debugging options */
    g_log_options                  INTEGER := c_log_dbms_output;
    g_log_text                     VARCHAR2(32767) := NULL;
    g_verbose                      BOOLEAN := c_default_verbose;

    ---------------------------------------------------------------------------------------------------------------------
    -------------------------------------------------------------------------------------------------------------------*/

    -- write the text to each logging option that is currently enabled
    -- verbose comments will not be logged if verbose mode is off.
    PROCEDURE write_to_log(v_text IN VARCHAR2, p_verbose IN BOOLEAN DEFAULT FALSE)
    IS
    BEGIN
        -- If global verbose setting is ON (meaning log everything)
        -- or if this text is not verbose then log it.
        IF g_verbose OR NOT p_verbose
        THEN
            IF BITAND(g_log_options, c_log_dbms_output) > 0
            THEN
                DBMS_OUTPUT.put_line(v_text);
            END IF;

            IF BITAND(g_log_options, c_log_rolling_buffer) > 0
            THEN
                IF LENGTH(g_log_text) + LENGTH(c_crlf) + LENGTH(v_text) > 32767
                THEN
                    g_log_text := SUBSTR(g_log_text, INSTR(g_log_text, c_crlf, LENGTH(v_text) + 2));
                END IF;

                g_log_text := g_log_text || v_text || c_crlf;
            END IF;

            IF BITAND(g_log_options, c_log_client_info) > 0
            THEN
                DBMS_APPLICATION_INFO.set_client_info(v_text);
            END IF;
        END IF;
    END write_to_log;

    -- When verbose mode is TRUE then additional information will be written to the logs.
    -- If logging is turned off then verbose mode won't add anything.
    PROCEDURE set_verbose(p_verbose IN BOOLEAN)
    IS
    BEGIN
        g_verbose := NVL(p_verbose, c_default_verbose);

        IF p_verbose
        THEN
            write_to_log('Switching logging to verbose mode', TRUE);
        END IF;
    END set_verbose;

    -- Returns the current setting of verbose mode (true/false)
    FUNCTION get_verbose
        RETURN BOOLEAN
    IS
    BEGIN
        RETURN g_verbose;
    END get_verbose;

    -- Turn off logging (options=0) or turn on different options (see c_log_xxxxx constants)
    PROCEDURE set_log_options(p_log_options IN INTEGER)
    IS
    BEGIN
        -- options big mask must be between 0 and sum of all possible log options.
        IF p_log_options < 0
        OR p_log_options > c_log_dbms_output + c_log_rolling_buffer + c_log_client_info
        THEN
            raise_application_error(
                -20001,
                   'Invalid log options, must be between 0 and '
                || TO_CHAR(c_log_dbms_output + c_log_rolling_buffer + c_log_client_info),
                TRUE
            );
        END IF;

        g_log_options := p_log_options;
    END set_log_options;

    -- Return current logging options
    FUNCTION get_log_options
        RETURN INTEGER
    IS
    BEGIN
        RETURN g_log_options;
    END get_log_options;

    -- Clears (null) the logging buffers
    PROCEDURE clear_log
    IS
    BEGIN
        -- Clear the log buffer
        g_log_text := NULL;

        -- if logging to session client then clear that too
        IF BITAND(g_log_options, c_log_client_info) > 0
        THEN
            DBMS_APPLICATION_INFO.set_client_info(NULL);
        END IF;
    END clear_log;

    -- Return the current contents of the rolling log buffer
    FUNCTION get_log_text
        RETURN VARCHAR2
    IS
    BEGIN
        RETURN g_log_text;
    END get_log_text;

    ---------------------------------------------------------------------------
    ---------------------------------------------------------------------------

    FUNCTION find_a_server(p_server_list IN VARCHAR2 DEFAULT NULL)
        RETURN connection
    IS
        v_servers    VARCHAR2(32767);
        v_start      INTEGER := 1;
        v_index      INTEGER;
        v_port_split INTEGER;
        v_host       VARCHAR2(32767);
        v_port       INTEGER;
        v_connected  BOOLEAN := FALSE;
        v_length     INTEGER;
        v_connection UTL_SMTP.connection;
        v_reply      UTL_SMTP.reply;
    BEGIN
        -- Enteries should be of the from
        --   host[:port][,host[:port]][,host[:port]][,host[:port]]...
        -- If the user didn't specify a list, and there is no default
        -- then use the UTL_MAIL parameters
        -- Use smtp_out_server if available or db_domain if not
        IF p_server_list IS NULL
        THEN
            IF c_default_smtp_server IS NULL
            THEN
                SELECT *
                  INTO v_servers
                  FROM (SELECT TRIM(VALUE)
                          FROM v$parameter
                         WHERE name IN ('smtp_out_server', 'db_domain') AND TRIM(VALUE) IS NOT NULL
                        ORDER BY name DESC)
                 WHERE ROWNUM = 1;
            ELSE
                v_servers := c_default_smtp_server || ':' || c_default_smtp_port;
            END IF;
        ELSE
            v_servers := p_server_list;
        END IF;

        v_length := LENGTH(v_servers);

        LOOP
            v_index := INSTR(v_servers, ',', v_start);

            IF v_index = 0
            THEN
                v_port_split := INSTR(v_servers, ':');

                IF v_port_split > 0
                THEN
                    v_host := SUBSTR(v_servers, 1, v_port_split - 1);
                    v_port := TO_NUMBER(SUBSTR(v_servers, v_port_split + 1));
                ELSE
                    v_host := TRIM(v_servers);
                    v_port := c_default_smtp_port;
                END IF;

                v_start := v_length + 1;
            ELSE
                v_host := SUBSTR(v_servers, v_start, v_index - v_start);
                v_port_split := INSTR(v_host, ':');

                IF v_port_split > 0
                THEN
                    v_port := TO_NUMBER(SUBSTR(v_host, v_port_split + 1));
                    v_host := SUBSTR(v_host, 1, v_port_split - 1);
                ELSE
                    v_port := c_default_smtp_port;
                END IF;

                v_start := v_index + 1;
            END IF;

            BEGIN
                write_to_log(
                    'find_a_server: trying - ' || v_connection.HOST || ':' || v_connection.port,
                    TRUE
                );
                v_connection := UTL_SMTP.open_connection(v_host, v_port);
                UTL_SMTP.helo(v_connection, v_host);
                v_connected := TRUE;
            EXCEPTION
                WHEN OTHERS
                THEN
                    write_to_log(
                        'find_a_server: failed - ' || v_connection.HOST || ':' || v_connection.port,
                        TRUE
                    );

                    -- If we've walked off the end of the server list
                    -- without getting connected then raise the last error
                    -- received from the attempt
                    -- otherwise, we'll try again with the next server/port
                    IF v_start > v_length
                    THEN
                        write_to_log('find_a_server: failed all hosts in server list', TRUE);
                        RAISE;
                    END IF;
            END;

            EXIT WHEN v_connected;
        END LOOP;

        write_to_log('find_a_server: ' || v_connection.HOST || ':' || v_connection.port);
        RETURN v_connection;
    END find_a_server;

    FUNCTION instr_enc(
        p_string      IN VARCHAR2,
        p_substring   IN VARCHAR2,
        p_start       IN INTEGER DEFAULT 1,
        p_occurence   IN INTEGER DEFAULT 1,
        p_enclosing   IN VARCHAR2 DEFAULT NULL,
        p_escape      IN VARCHAR2 DEFAULT '\'
    )
        RETURN INTEGER
    IS
        v_occur_cnt INTEGER := 0;
        v_sub_idx   INTEGER;
        v_sub_len   INTEGER := LENGTH(p_substring);
        v_enc_idx   INTEGER;
        v_enc_len   INTEGER := LENGTH(p_enclosing);
        v_esc_idx   INTEGER;
        v_esc_len   INTEGER := LENGTH(p_escape);
        v_index     INTEGER := p_start;
        v_enclosed  BOOLEAN := FALSE;
        v_max       INTEGER := LENGTH(p_string) + 1;

        FUNCTION first_found(a IN INTEGER, b IN INTEGER, c INTEGER)
            RETURN INTEGER
        IS
            v_result INTEGER;
        BEGIN
            v_result :=
                LEAST(NVL(NULLIF(a, 0), v_max), NVL(NULLIF(b, 0), v_max), NVL(NULLIF(c, 0), v_max));

            IF v_result = v_max
            THEN
                v_result := 0;
            END IF;

            RETURN v_result;
        END;
    BEGIN
        IF p_enclosing IS NULL
        THEN
            v_index :=
                INSTR(
                    p_string,
                    p_substring,
                    p_start,
                    p_occurence
                );
        ELSE
            LOOP
                v_sub_idx := INSTR(p_string, p_substring, v_index);
                v_enc_idx := INSTR(p_string, p_enclosing, v_index);
                v_esc_idx := INSTR(p_string, p_escape || p_enclosing, v_index);

                v_index := first_found(v_sub_idx, v_enc_idx, v_esc_idx);

                IF GREATEST(v_sub_idx, v_enc_idx, v_esc_idx) = 0
                THEN
                    NULL;
                ELSIF v_index = v_esc_idx -- escape character found
                THEN
                    v_index := v_index + v_esc_len + v_enc_len;
                ELSIF v_index = v_enc_idx -- enclosing character found
                THEN
                    v_enclosed := NOT v_enclosed;
                    v_index := v_index + v_enc_len;
                ELSE -- substring found
                    IF v_enclosed
                    THEN
                        v_index := v_index + v_sub_len;
                    ELSE -- not enclosed
                        v_occur_cnt := v_occur_cnt + 1;

                        IF v_occur_cnt < p_occurence
                        THEN
                            v_index := v_index + v_sub_len;
                        END IF;
                    END IF;
                END IF;

                EXIT WHEN v_index > LENGTH(p_string) OR v_index = 0 OR v_occur_cnt = p_occurence;
            END LOOP;
        END IF;

        RETURN v_index;
    END;

    FUNCTION extract_address(p_string IN VARCHAR2)
        RETURN VARCHAR2
    IS
        v_bracket_start INTEGER;
        v_bracket_end   INTEGER;
        v_result        VARCHAR2(32767) := TRIM(p_string);
    BEGIN
        v_bracket_start :=
            instr_enc(
                v_result,
                '<',
                1,
                1,
                '"'
            );

        IF v_bracket_start > 0
        THEN
            v_bracket_end :=
                instr_enc(
                    v_result,
                    '>',
                    v_bracket_start + 1,
                    1,
                    '"'
                );

            IF v_bracket_end > 0
            THEN
                v_result :=
                    SUBSTR(v_result, v_bracket_start + 1, v_bracket_end - v_bracket_start - 1);
            END IF;
        END IF;

        -- Take out any tab, line feed or carriage return characters
        -- that might have been used to visually format the strings
        RETURN TRIM(TRANSLATE(v_result, 'a' || CHR(9) || CHR(10) || CHR(13), 'a'));
    END extract_address;

    PROCEDURE parse_email_list(p_addresses IN VARCHAR2, p_list IN OUT NOCOPY DBMS_SQL.varchar2s)
    IS
        v_length      INTEGER := LENGTH(p_addresses);
        v_start       INTEGER := 1;
        v_delim_index INTEGER;
    BEGIN
        WHILE (v_start <= v_length)
        LOOP
            v_delim_index :=
                instr_enc(
                    p_addresses,
                    ',',
                    v_start,
                    1,
                    '"'
                );

            IF v_delim_index = 0
            THEN
                p_list(p_list.COUNT + 1) := extract_address(SUBSTR(p_addresses, v_start));
                v_start := v_length + 1;
            ELSE
                p_list(p_list.COUNT + 1) :=
                    extract_address(SUBSTR(p_addresses, v_start, v_delim_index - v_start));
                v_start := v_delim_index + 1;
            END IF;
        END LOOP;
    END parse_email_list;

    PROCEDURE begin_mime_block(
        p_connection     IN OUT NOCOPY connection,
        p_mime_type      IN            VARCHAR2 DEFAULT 'text/plain;charset=us-ascii',
        p_inline         IN            BOOLEAN DEFAULT TRUE,
        p_filename       IN            VARCHAR2 DEFAULT NULL,
        p_transfer_enc   IN            VARCHAR2 DEFAULT NULL
    )
    IS
    BEGIN
        UTL_SMTP.write_data(p_connection, '--' || g_boundary || c_crlf);
        UTL_SMTP.write_data(p_connection, 'Content-Type: ' || p_mime_type || c_crlf);

        IF (p_transfer_enc IS NOT NULL)
        THEN
            UTL_SMTP.write_data(
                p_connection,
                'Content-Transfer-Encoding: ' || p_transfer_enc || c_crlf
            );
        END IF;

        IF (p_filename IS NOT NULL)
        THEN
            IF (p_inline)
            THEN
                UTL_SMTP.write_data(
                    p_connection,
                    'Content-Disposition: inline; filename="' || p_filename || '"' || c_crlf
                );
            ELSE
                UTL_SMTP.write_data(
                    p_connection,
                    'Content-Disposition: attachment; filename="' || p_filename || '"' || c_crlf
                );
            END IF;
        END IF;

        UTL_SMTP.write_data(p_connection, c_crlf);
    END begin_mime_block;

    ------------------------------------------------------------------------
    PROCEDURE end_mime_block(
        p_connection   IN OUT NOCOPY connection,
        p_last         IN            BOOLEAN DEFAULT FALSE
    )
    IS
    BEGIN
        UTL_SMTP.write_data(p_connection, c_crlf);

        IF (p_last)
        THEN
            UTL_SMTP.write_data(p_connection, '--' || g_boundary || '--' || c_crlf);
        END IF;
    END end_mime_block;

    PROCEDURE write_clob(p_connection IN OUT NOCOPY connection, p_clob IN OUT NOCOPY CLOB)
    IS
        v_len   INTEGER;
        v_index INTEGER;
    BEGIN
        v_len := DBMS_LOB.getlength(p_clob);
        v_index := 1;

        write_to_log('Starting write_clob: ' || TO_CHAR(v_len) || ' characters', TRUE);

        WHILE v_index <= v_len
        LOOP
            UTL_SMTP.write_data(p_connection, DBMS_LOB.SUBSTR(p_clob, 32000, v_index));
            v_index := v_index + 32000;
        END LOOP;

        write_to_log('End write_clob: ' || TO_CHAR(v_len) || ' characters', TRUE);
    END write_clob;

    PROCEDURE write_blob(p_connection IN OUT NOCOPY connection, p_blob IN OUT NOCOPY BLOB)
    IS
        v_len   INTEGER;
        v_index INTEGER;
        v_chunk RAW(32767);
    BEGIN
        v_len := DBMS_LOB.getlength(p_blob);
        v_index := 1;

        write_to_log('Starting write_blob: ' || TO_CHAR(v_len) || ' bytes', TRUE);

        WHILE v_index <= v_len
        LOOP
            v_chunk := DBMS_LOB.SUBSTR(p_blob, c_base64_line, v_index);
            v_index := v_index + c_base64_line;

            UTL_SMTP.write_data(
                p_connection,
                UTL_RAW.cast_to_varchar2(UTL_ENCODE.base64_encode(v_chunk))
            );
        END LOOP;

        write_to_log('End write_blob: ' || TO_CHAR(v_len) || ' bytes', TRUE);
    END write_blob;

    PROCEDURE send_all(
        p_sender          IN            VARCHAR2,
        p_recipients      IN            VARCHAR2,
        p_cc              IN            VARCHAR2,
        p_bcc             IN            VARCHAR2,
        p_subject         IN            VARCHAR2,
        p_message         IN OUT NOCOPY CLOB,
        p_mime_type       IN            VARCHAR2,
        p_priority        IN            PLS_INTEGER,
        p_clob            IN OUT NOCOPY CLOB,
        p_blob            IN OUT NOCOPY BLOB,
        p_att_inline      IN            BOOLEAN,
        p_att_mime_type   IN            VARCHAR2,
        p_att_filename    IN            VARCHAR2,
        p_replyto         IN            VARCHAR2,
        p_server_list     IN            VARCHAR2
    )
    IS
        v_connection   UTL_SMTP.connection;
        v_address_list DBMS_SQL.varchar2s;
        v_reply        UTL_SMTP.reply;
    BEGIN
        v_connection := find_a_server(p_server_list);

        v_reply := UTL_SMTP.mail(v_connection, extract_address(p_sender));
        write_to_log(
            'Mail(' || p_sender || '): ' || TO_CHAR(v_reply.code, 'fm009') || ' ' || v_reply.text
        );

        IF (p_recipients IS NOT NULL)
        THEN
            parse_email_list(p_recipients, v_address_list);
        END IF;

        IF (p_cc IS NOT NULL)
        THEN
            parse_email_list(p_cc, v_address_list);
        END IF;

        IF (p_bcc IS NOT NULL)
        THEN
            parse_email_list(p_bcc, v_address_list);
        END IF;

        IF v_address_list.COUNT > 0
        THEN
            FOR i IN 1 .. v_address_list.COUNT
            LOOP
                v_reply := UTL_SMTP.rcpt(v_connection, v_address_list(i));
                write_to_log(
                       'Rcpt('
                    || v_address_list(i)
                    || '): '
                    || TO_CHAR(v_reply.code, 'fm009')
                    || ' '
                    || v_reply.text
                );
            END LOOP;
        END IF;

        v_reply := UTL_SMTP.open_data(v_connection);
        write_to_log('Open Data: ' || TO_CHAR(v_reply.code, 'fm009') || ' ' || v_reply.text);

        IF (p_sender IS NOT NULL)
        THEN
            UTL_SMTP.write_data(v_connection, 'From: ' || p_sender || c_crlf);
        ELSE
            RAISE invalid_argument;
        END IF;

        IF (p_recipients IS NOT NULL)
        THEN
            UTL_SMTP.write_data(v_connection, 'To: ' || p_recipients || c_crlf);
        END IF;

        IF (p_cc IS NOT NULL)
        THEN
            UTL_SMTP.write_data(v_connection, 'CC: ' || p_cc || c_crlf);
        END IF;

        IF (p_replyto IS NOT NULL)
        THEN
            UTL_SMTP.write_data(v_connection, 'Reply-To: ' || extract_address(p_replyto) || c_crlf);
        END IF;

        UTL_SMTP.write_data(v_connection, 'Subject: ' || p_subject || c_crlf);

        IF p_priority BETWEEN 1 AND 5
        THEN
            UTL_SMTP.write_data(v_connection, 'X-Priority: ' || p_priority || c_crlf);
        ELSE
            RAISE invalid_priority;
        END IF;

        IF p_clob IS NOT NULL OR p_blob IS NOT NULL
        THEN
            UTL_SMTP.write_data(v_connection, 'MIME-Version: 1.0' || c_crlf);
            UTL_SMTP.write_data(v_connection, 'Content-Type: ' || multipart_mime_type || c_crlf);
            UTL_SMTP.write_data(v_connection, c_crlf);
            UTL_SMTP.write_data(
                v_connection,
                'This is a multi-part message in MIME format.' || c_crlf
            );

            IF p_message IS NOT NULL
            THEN
                attach_clob(
                    v_connection,
                    p_message,
                    p_mime_type,
                    TRUE,
                    NULL,
                    FALSE
                );
            END IF;

            IF p_clob IS NOT NULL
            THEN
                attach_clob(
                    v_connection,
                    p_clob,
                    p_att_mime_type,
                    p_att_inline,
                    p_att_filename,
                    TRUE
                );
            END IF;

            IF p_blob IS NOT NULL
            THEN
                attach_blob(
                    v_connection,
                    p_blob,
                    p_att_mime_type,
                    p_att_inline,
                    p_att_filename,
                    TRUE
                );
            END IF;
        ELSE
            IF p_mime_type IS NOT NULL
            THEN
                UTL_SMTP.write_data(v_connection, 'MIME-Version: 1.0' || c_crlf);
                UTL_SMTP.write_data(v_connection, 'Content-Type: ' || p_mime_type || c_crlf);
                UTL_SMTP.write_data(v_connection, c_crlf);
            END IF;

            IF p_message IS NOT NULL
            THEN
                write_clob(v_connection, p_message);
            END IF;
        END IF;

        v_reply := UTL_SMTP.close_data(v_connection);
        write_to_log('Close_Data:' || TO_CHAR(v_reply.code, 'fm009') || ' ' || v_reply.text);

        v_reply := UTL_SMTP.quit(v_connection);
        write_to_log('Quit: ' || TO_CHAR(v_reply.code, 'fm009') || ' ' || v_reply.text);
    EXCEPTION
        WHEN OTHERS
        THEN
            IF (v_connection.HOST IS NOT NULL)
            THEN
                UTL_SMTP.quit(v_connection);
            END IF;

            RAISE;
    END send_all;

    PROCEDURE send(
        p_sender        IN            VARCHAR2,
        p_recipients    IN            VARCHAR2,
        p_cc            IN            VARCHAR2 DEFAULT NULL,
        p_bcc           IN            VARCHAR2 DEFAULT NULL,
        p_subject       IN            VARCHAR2 DEFAULT NULL,
        p_message       IN OUT NOCOPY CLOB,
        p_mime_type     IN            VARCHAR2 DEFAULT 'text/plain;charset=us-ascii',
        p_priority      IN            PLS_INTEGER DEFAULT 3,
        p_replyto       IN            VARCHAR2 DEFAULT NULL,
        p_server_list   IN            VARCHAR2 DEFAULT NULL
    )
    IS
        v_dummyclob CLOB := NULL;
        v_dummyblob BLOB := NULL;
    BEGIN
        send_all(
            p_sender,
            p_recipients,
            p_cc,
            p_bcc,
            p_subject,
            p_message,
            p_mime_type,
            p_priority,
            v_dummyclob,
            v_dummyblob,
            NULL,
            NULL,
            NULL,
            NULL,
            p_server_list
        );
    END send;

    PROCEDURE send_attach_clob(
        p_sender          IN            VARCHAR2,
        p_recipients      IN            VARCHAR2,
        p_cc              IN            VARCHAR2 DEFAULT NULL,
        p_bcc             IN            VARCHAR2 DEFAULT NULL,
        p_subject         IN            VARCHAR2 DEFAULT NULL,
        p_message         IN OUT NOCOPY CLOB,
        p_mime_type       IN            VARCHAR2 DEFAULT 'text/plain;charset=us-ascii',
        p_priority        IN            PLS_INTEGER DEFAULT 3,
        p_attachment      IN OUT NOCOPY CLOB,
        p_att_inline      IN            BOOLEAN DEFAULT TRUE,
        p_att_mime_type   IN            VARCHAR2 DEFAULT 'text/plain;charset=us-ascii',
        p_att_filename    IN            VARCHAR2 DEFAULT NULL,
        p_replyto         IN            VARCHAR2 DEFAULT NULL,
        p_server_list     IN            VARCHAR2 DEFAULT NULL
    )
    IS
        v_dummy BLOB := NULL;
    BEGIN
        send_all(
            p_sender,
            p_recipients,
            p_cc,
            p_bcc,
            p_subject,
            p_message,
            p_mime_type,
            p_priority,
            p_attachment,
            v_dummy,
            p_att_inline,
            p_att_mime_type,
            p_att_filename,
            p_replyto,
            p_server_list
        );
    END send_attach_clob;

    PROCEDURE send_attach_blob(
        p_sender          IN            VARCHAR2,
        p_recipients      IN            VARCHAR2,
        p_cc              IN            VARCHAR2 DEFAULT NULL,
        p_bcc             IN            VARCHAR2 DEFAULT NULL,
        p_subject         IN            VARCHAR2 DEFAULT NULL,
        p_message         IN OUT NOCOPY CLOB,
        p_mime_type       IN            VARCHAR2 DEFAULT 'text/plain;charset=us-ascii',
        p_priority        IN            PLS_INTEGER DEFAULT 3,
        p_attachment      IN OUT NOCOPY BLOB,
        p_att_inline      IN            BOOLEAN DEFAULT TRUE,
        p_att_mime_type   IN            VARCHAR2 DEFAULT 'application/octet-stream',
        p_att_filename    IN            VARCHAR2 DEFAULT NULL,
        p_replyto         IN            VARCHAR2 DEFAULT NULL,
        p_server_list     IN            VARCHAR2 DEFAULT NULL
    )
    IS
        v_dummy CLOB := NULL;
    BEGIN
        send_all(
            p_sender,
            p_recipients,
            p_cc,
            p_bcc,
            p_subject,
            p_message,
            p_mime_type,
            p_priority,
            v_dummy,
            p_attachment,
            p_att_inline,
            p_att_mime_type,
            p_att_filename,
            p_replyto,
            p_server_list
        );
    END send_attach_blob;

    PROCEDURE set_mime_boundary(p_boundary IN VARCHAR2)
    IS
    BEGIN
        g_boundary := p_boundary;
    END;

    FUNCTION get_mime_boundary
        RETURN VARCHAR2
    IS
    BEGIN
        RETURN g_boundary;
    END;

    FUNCTION multipart_mime_type
        RETURN VARCHAR2
    IS
    BEGIN
        RETURN 'multipart/mixed; boundary="' || g_boundary || '"';
    END;

    PROCEDURE attach_text(
        p_connection   IN OUT NOCOPY connection,
        p_data         IN            VARCHAR2,
        p_mime_type    IN            VARCHAR2 DEFAULT 'text/plain;charset=us-ascii',
        p_inline       IN            BOOLEAN DEFAULT TRUE,
        p_filename     IN            VARCHAR2 DEFAULT NULL,
        p_last         IN            BOOLEAN DEFAULT FALSE
    )
    IS
    BEGIN
        begin_mime_block(
            p_connection,
            p_mime_type,
            p_inline,
            p_filename
        );
        UTL_SMTP.write_data(p_connection, p_data);
        end_mime_block(p_connection, p_last);
    END attach_text;

    PROCEDURE attach_clob(
        p_connection   IN OUT NOCOPY connection,
        p_data         IN OUT NOCOPY CLOB,
        p_mime_type    IN            VARCHAR2 DEFAULT 'text/plain;charset=us-ascii',
        p_inline       IN            BOOLEAN DEFAULT TRUE,
        p_filename     IN            VARCHAR2 DEFAULT NULL,
        p_last         IN            BOOLEAN DEFAULT FALSE
    )
    IS
    BEGIN
        begin_mime_block(
            p_connection,
            p_mime_type,
            p_inline,
            p_filename
        );

        write_clob(p_connection, p_data);

        end_mime_block(p_connection, p_last);
    END attach_clob;

    PROCEDURE attach_raw(
        p_connection   IN OUT NOCOPY connection,
        p_data         IN            RAW,
        p_mime_type    IN            VARCHAR2 DEFAULT 'application/octet-stream',
        p_inline       IN            BOOLEAN DEFAULT TRUE,
        p_filename     IN            VARCHAR2 DEFAULT NULL,
        p_last         IN            BOOLEAN DEFAULT FALSE
    )
    IS
    BEGIN
        begin_mime_block(
            p_connection,
            p_mime_type,
            p_inline,
            p_filename,
            'base64'
        );

        UTL_SMTP.write_data(
            p_connection,
            UTL_RAW.cast_to_varchar2(UTL_ENCODE.base64_encode(p_data))
        );

        end_mime_block(p_connection, p_last);
    END attach_raw;

    PROCEDURE attach_blob(
        p_connection   IN OUT NOCOPY connection,
        p_data         IN OUT NOCOPY BLOB,
        p_mime_type    IN            VARCHAR2 DEFAULT 'application/octet-stream',
        p_inline       IN            BOOLEAN DEFAULT TRUE,
        p_filename     IN            VARCHAR2 DEFAULT NULL,
        p_last         IN            BOOLEAN DEFAULT FALSE
    )
    IS
    BEGIN
        begin_mime_block(
            p_connection,
            p_mime_type,
            p_inline,
            p_filename,
            'base64'
        );

        write_blob(p_connection, p_data);

        end_mime_block(p_connection, p_last);
    END attach_blob;
BEGIN
    g_boundary := '--' || RAWTOHEX(SYS_GUID());
END sdsemail;


Sample Data


In some of the examples above I send jpg files from a table called MY_IMAGES.

That table and sample data can be recreated with the following script.

The raw content is a small smiley face, the larger blob content is a photo of a penny.


CREATE TABLE my_images
(
    id        NUMBER,
    rawimage  RAW(2000),
    blobimage BLOB
);

INSERT INTO my_images(id, rawimage)
VALUES (
1,
HEXTORAW(
'FFD8FFE000104A46494600010101006000600000FFDB004300020101020101020' ||
'2020202020202030503030303030604040305070607070706070708090B090808' ||
'0A0807070A0D0A0A0B0C0C0C0C07090E0F0D0C0E0B0C0C0CFFDB0043010202020' ||
'30303060303060C0807080C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C' ||
'0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0CFFC000110' ||
'8000A000A03012200021101031101FFC4001F0000010501010101010100000000' ||
'000000000102030405060708090A0BFFC400B5100002010303020403050504040' ||
'000017D01020300041105122131410613516107227114328191A1082342B1C115' ||
'52D1F02433627282090A161718191A25262728292A3435363738393A434445464' ||
'748494A535455565758595A636465666768696A737475767778797A8384858687' ||
'88898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C' ||
'4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE1E2E3E4E5E6E7E8E9EAF1F2F3F4F5F6F7' ||
'F8F9FAFFC4001F010003010101010101010101000000000000010203040506070' ||
'8090A0BFFC400B511000201020404030407050404000102770001020311040521' ||
'31061241510761711322328108144291A1B1C109233352F0156272D10A162434E' ||
'125F11718191A262728292A35363738393A434445464748494A53545556575859' ||
'5A636465666768696A737475767778797A82838485868788898A9293949596979' ||
'8999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4' ||
'D5D6D7D8D9DAE2E3E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFFDA000C030100021' ||
'10311003F00FD8FF8A1ADDE7FC241E3192DBE286BBA0DB2B6990ADADB5858CB36' ||
'813DACE93CB0DB43242D2DCBEA514C90E0ACB8C2F95B5D80AF6DAA17DE16D2F53' ||
'D56DEFEE74DB0B8BEB4C791712DBA3CB0E338DAC4657193D0F7357E803FFFD9')
);

declare
v_lob blob;
begin
DBMS_LOB.CREATETEMPORARY(v_lob,true,dbms_lob.call);
dbms_lob.writeappend(v_lob,30,hextoraw('FFD8FFE000104A4649460001010100E600E60000FFE13A0A457869660000'));
dbms_lob.writeappend(v_lob,30,hextoraw('4D4D002A000000080007011200030000000100010000011A000500000001'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000086E011B000500000001000008760128000300000001000200000213'));
dbms_lob.writeappend(v_lob,30,hextoraw('0003000000010001000087690004000000010000087EEA1C00070000080C'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000006200002FE61CEA0000000800000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00E600000001000000E600000001001A829A000500000001000011C8829D'));
dbms_lob.writeappend(v_lob,30,hextoraw('000500000001000011D09101000700000004010203009201000A00000001'));
dbms_lob.writeappend(v_lob,30,hextoraw('000011D89202000500000001000011E09204000A00000001000011E89205'));
dbms_lob.writeappend(v_lob,30,hextoraw('000500000001000011F0920A000500000001000011F8927C000700001DC0'));
dbms_lob.writeappend(v_lob,30,hextoraw('00001200A00000070000000430313030A00100030000000100010000A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('0003000000010B100000A00300030000000108500000A005000400000001'));
dbms_lob.writeappend(v_lob,30,hextoraw('00002FC0A21500050000000100002FD4A21700030000000100020000A300'));
dbms_lob.writeappend(v_lob,30,hextoraw('00070000000103000000A30100070000000101000000A401000300000001'));
dbms_lob.writeappend(v_lob,30,hextoraw('00000000A40200030000000100000000A40400050000000100002FDCA406'));
dbms_lob.writeappend(v_lob,30,hextoraw('00030000000100000000A40700030000000100010000A40C000300000001'));
dbms_lob.writeappend(v_lob,30,hextoraw('00010000EA1C00070000080C000009BCEA1D00090000000100000DC20000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00001CEA0000000800000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000000000000000000000000000000000010000003C'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000001C0000000A00000006000000010000000300000001000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000300000003000000010000003F0000000A4B444B30313032495A363530'));
dbms_lob.writeappend(v_lob,30,hextoraw('2020202003010001100B5008DB07071200281A1500000000010018011A06'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000139811000009C230000C00F0000811000000201000105000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0002000000000000000000000000000060F2010000000100A0AB01001001'));
dbms_lob.writeappend(v_lob,30,hextoraw('000059006400000000016400000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000068'));
dbms_lob.writeappend(v_lob,30,hextoraw('8500000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'));
dbms_lob.writeappend(v_lob,30,hextoraw('FFFFFFFFFFFFFFFFFFFFFFFFFFFFF4FFFFFFFFFFFFFFFFFFC797A6C6FFFF'));
dbms_lob.writeappend(v_lob,30,hextoraw('FFFFFAFFFFFF9879798DF2F4F2ECD3D4CBB575383E708FA0B3BCA799806E'));
dbms_lob.writeappend(v_lob,30,hextoraw('6661656B6D6F788C7E6961626363656565656669FFFFFFFFFFFFFFFFFFFF'));
dbms_lob.writeappend(v_lob,30,hextoraw('FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'));
dbms_lob.writeappend(v_lob,30,hextoraw('FFFFFFFFFFFFFFFFFFFFFFFFF8EDEBEFFFFFFFFFFFFFFFFFE1A5A5D2FAFF'));
dbms_lob.writeappend(v_lob,30,hextoraw('FFFFFFFFF3E1D5CACCD8DCDDE4F3F0DCD0CFD0D1D2D3D4D3D4D600010000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00054B434B464C3631343030313036000000DC000000000001010000E20A'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000C0200000001000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('60F2010000000100A0AB0100EFCB01000000010034A00100000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00000000000018565300B85553000000000060F2010000000100A0AB0100'));
dbms_lob.writeappend(v_lob,30,hextoraw('CD230100000001009401010000006800B40901001C87F6FF00609A00AB42'));
dbms_lob.writeappend(v_lob,30,hextoraw('0400AB2A080066660900000000000000000000206500D14506005D140A00'));
dbms_lob.writeappend(v_lob,30,hextoraw('00006100002005000000030000010000B337000000000000002700005A1C'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000B07200000000010000000000000001000000010080367C007C130500'));
dbms_lob.writeappend(v_lob,30,hextoraw('328407000CD704008500000000000000BB0C000006000000020000001100'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000C0000000010000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000600000000000003000000160800000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000001528080000000000000000487F7F6C'));
dbms_lob.writeappend(v_lob,30,hextoraw('00000000452C1E1C78807F7C4148586D8080808080808080808080808080'));
dbms_lob.writeappend(v_lob,30,hextoraw('808080808080808080808080808080808080808080800000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000000000000000000000000000040F000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000014080917000000001C0F000023071111010100020203010112130F05'));
dbms_lob.writeappend(v_lob,30,hextoraw('060301010202030403030403050202040201070505020405030203050000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000021002C00'));
dbms_lob.writeappend(v_lob,30,hextoraw('11000000000000000000000000000000000060006D007C008A0000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00000000A20074004500440061004F00510068007E008200B100C400AC00'));
dbms_lob.writeappend(v_lob,30,hextoraw('AC00A4008E005200210024004B0069007A008C009500800072005A004800'));
dbms_lob.writeappend(v_lob,30,hextoraw('41003C00400045004700490051006500580044003D003D003D003E003F00'));
dbms_lob.writeappend(v_lob,30,hextoraw('3F0040004000410044000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0200000000000100000000000000000006000400020002000000FFFF0000'));
dbms_lob.writeappend(v_lob,30,hextoraw('010006000600080009000900080009000800040000000000050007000800'));
dbms_lob.writeappend(v_lob,30,hextoraw('080009000900080007000600060005000500060006000600070008000800'));
dbms_lob.writeappend(v_lob,30,hextoraw('060005000500050005000500050005000600060006000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000000000000F9FFF7FFFDFF00000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000E6FFE1FFE0FFE2FF00000000000000000E00'));
dbms_lob.writeappend(v_lob,30,hextoraw('0A0006000500E7FFE3FFE2FFEAFF0C000C00110014001300120011000F00'));
dbms_lob.writeappend(v_lob,30,hextoraw('0500F9FFF9FF06000B000D000F00110010000E0009000700050004000500'));
dbms_lob.writeappend(v_lob,30,hextoraw('06000700070008000A000D00080007000600060006000700060006000600'));
dbms_lob.writeappend(v_lob,30,hextoraw('06000700B3070000000D000000000000EF0F090081FD81FDED00000061FE'));
dbms_lob.writeappend(v_lob,30,hextoraw('CB000000B6C781BDD08AC2DC94C9EBA2D3FFBBF8FFF2FFFFFFFFFFFFFFFF'));
dbms_lob.writeappend(v_lob,30,hextoraw('FFFFFFFFFFFFFFFFFFFFBBC782C0CE88C6D690CAE39BD2FDB2F6FFEFFFFF'));
dbms_lob.writeappend(v_lob,30,hextoraw('FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBDC982C3CF89C8D48ECCD992CEDE'));
dbms_lob.writeappend(v_lob,30,hextoraw('97CBEA9EBBE3A6D6F7D8FFFFFFFFFFFFFFFFFFFFFFFFBFC884C4CE89B8C8'));
dbms_lob.writeappend(v_lob,30,hextoraw('80AFC379A5B9705F692262621C707B2EC4E0B3FFFFFFFFFFFFFFFFFFBBC7'));
dbms_lob.writeappend(v_lob,30,hextoraw('80BCC78199A96299A96387904E5B5614585B1658621A8BAA5CDEFFD0FFFF'));
dbms_lob.writeappend(v_lob,30,hextoraw('FFFFFFFFABBA72A3B46B90A35A7790455E7D323A4712343E0F4C5D1E728F'));
dbms_lob.writeappend(v_lob,30,hextoraw('4794BD71CDF0B4CEFABA93A35C8E9D558A9E555472274D6E234D6D224B6D'));
dbms_lob.writeappend(v_lob,30,hextoraw('214B6F25507A2C698E449EBE75BEDC9483924C85964E587A2E46681F456A'));
dbms_lob.writeappend(v_lob,30,hextoraw('1F436A1E42691E426820426B2147742A688D448BAF64FFFFFFFFFFFFFFFF'));
dbms_lob.writeappend(v_lob,30,hextoraw('FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'));
dbms_lob.writeappend(v_lob,30,hextoraw('FFFFFFFFFFFFFFFFFFFFFFFFFFFFF8EDEBEFFFFFFFFFFFFFFFFFE1A5A5D2'));
dbms_lob.writeappend(v_lob,30,hextoraw('FAFFFFFFFFFFF3E1D5CACCD8DCDDE4F3F0DCD0CFD0D1D2D3D4D3D4D6FEF5'));
dbms_lob.writeappend(v_lob,30,hextoraw('00000000640081100100000001030000F4000000F0000000F80000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000910300007F3600000000000000000000640081100100000001030000'));
dbms_lob.writeappend(v_lob,30,hextoraw('093D0000C30000002601000000062E06850000009C230000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000001009300670293009B040000D0070000D8050000B00026012C01CD00'));
dbms_lob.writeappend(v_lob,30,hextoraw('320000000000000001016400000000003700000008017200020200000500'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000002E0D070DF70C010DD90C0000741B'));
dbms_lob.writeappend(v_lob,30,hextoraw('331DBD226422BC1D00000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000008D00120000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000000000000000000000007E000F00000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000300000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000000004504D104D804F0049F040000C1049104F6046604A3040000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000B604A804CF048D04DA040000640545057C055C05'));
dbms_lob.writeappend(v_lob,30,hextoraw('7A0500000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000000000002D07E7064207E60645070000F9075A07'));
dbms_lob.writeappend(v_lob,30,hextoraw('11088C071D08000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000000008307C707C906E007D8070000'));
dbms_lob.writeappend(v_lob,30,hextoraw('AF0790071408180888070000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000000000000000009082B07E8074B07'));
dbms_lob.writeappend(v_lob,30,hextoraw('1B070000DE07B1076B087708DA0700000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000000000000000000000000E7071407'));
dbms_lob.writeappend(v_lob,30,hextoraw('86078A07CD0700008607B60725093D091B08000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('EA0537060D060506A90600000F0705073109FB0944070000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000017053C0516052205D60400002F059A050F05FB043F0500000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000EC06C2062307F205EA0600005F06D806EB07D309D607'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000B507F307F00648072507000081079207F708'));
dbms_lob.writeappend(v_lob,30,hextoraw('2B091A080000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000002080907E0061C07660700004107'));
dbms_lob.writeappend(v_lob,30,hextoraw('8E07A00815088D0700000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000000000000120876073C07D107AF07'));
dbms_lob.writeappend(v_lob,30,hextoraw('00009C072E07E207D707C607000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000B807B207EB07'));
dbms_lob.writeappend(v_lob,30,hextoraw('630890070000BA071608C40935097F070000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000002C07'));
dbms_lob.writeappend(v_lob,30,hextoraw('1A07A90754075B0700007D077107CC097608090800000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00008D058A0549056305580500006205C8056705D6053B05000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000300685060C06E40652060000900687069F06E806B0060000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000003107490721073607BE060000760728074F08EB06'));
dbms_lob.writeappend(v_lob,30,hextoraw('950700000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000082074B0844075C07FA07000075079807'));
dbms_lob.writeappend(v_lob,30,hextoraw('14081307D106000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000000008D07CE076307ED07C1070000'));
dbms_lob.writeappend(v_lob,30,hextoraw('690857080C08F4078F070000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000001608BA07E0079B07'));
dbms_lob.writeappend(v_lob,30,hextoraw('020800001B084D0906094408EC0700000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000000000000000000000000000000000007B076207'));
dbms_lob.writeappend(v_lob,30,hextoraw('3C07C2074E0700006307EF079A08F3077008000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00000000C004BD04C804A604AE040000F2049A043605DA04C40400000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000EA04AE04C2040805D904000084058305F4064B071307'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000005007C10696071D0727080000D5074107FE07'));
dbms_lob.writeappend(v_lob,30,hextoraw('A108FF080000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000000000000000A807B6079307DF07B9070000B907'));
dbms_lob.writeappend(v_lob,30,hextoraw('DC07AE088B08680800000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000000000000C808ED070708AB071207'));
dbms_lob.writeappend(v_lob,30,hextoraw('00001408CF07050984099208000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000000000000000000004908EE07D407'));
dbms_lob.writeappend(v_lob,30,hextoraw('7907A7070000880733085E0BC30BF3080000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000002006'));
dbms_lob.writeappend(v_lob,30,hextoraw('9D068006F405E406000061077107D40C0F0EDF0900000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00005205E2043C05F804310500007C0594051A0530056D05000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000C07AF063D077B06290700009E061008E50B980EF00A0000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000009A07A6077F07B8071F070000FF07CE07F30A230B'));
dbms_lob.writeappend(v_lob,30,hextoraw('600900000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000E8078C07700778078D070000A3070708'));
dbms_lob.writeappend(v_lob,30,hextoraw('FD089E08F107000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000CD072407D907E707EB070000'));
dbms_lob.writeappend(v_lob,30,hextoraw('70072F080D09580820080000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000000000000000004081C08FB079108'));
dbms_lob.writeappend(v_lob,30,hextoraw('7B080000E4074C09B80C4E0B1E0800000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000000000000000000000000000000000004907E707'));
dbms_lob.writeappend(v_lob,30,hextoraw('8907C20708080000E50792083A0C6F0ADF07000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('6E0598056905AE05BA0500004A051B068D0509069B050000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00000000FB05C006EC06EA0665060000CB0655077807DD08F20600000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000EC069707E6071707590700003C074F08EA085D073F07'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000C80784075407F90738070000AF071208E808'));
dbms_lob.writeappend(v_lob,30,hextoraw('A4078A070000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000000000000000F907A5077E07F1072D080000D007'));
dbms_lob.writeappend(v_lob,30,hextoraw('4C089408C4076F0800000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000000000000AC07F707E3078B07D207'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000A709AA0AD60A50081E08000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000000000000000000000000000000025085E079307'));
dbms_lob.writeappend(v_lob,30,hextoraw('B207D4070000E907BF087B0AC50824080000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000018012000DF0001000000000000008D00790000000505'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000001000500050000000000000003000100000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000000000007A140100D8090100000001005FBA0100'));
dbms_lob.writeappend(v_lob,30,hextoraw('7F56FFFF21EFFFFF41C5FFFFF0CE0100CF6BFFFFDB1200007454FFFFB198'));
dbms_lob.writeappend(v_lob,30,hextoraw('010000000000000000000000000000010002000700000004303130300000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000000000005000000001000000000000006400000007010300030000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000100060000011200030000000100010000011A00050000000100003040'));
dbms_lob.writeappend(v_lob,30,hextoraw('011B00050000000100003048012800030000000100020000020100040000'));
dbms_lob.writeappend(v_lob,30,hextoraw('0001000030500202000400000001000009B2000000000000004800000001'));
dbms_lob.writeappend(v_lob,30,hextoraw('0000004800000001FFD8FFDB004300080606070605080707070909080A0C'));
dbms_lob.writeappend(v_lob,30,hextoraw('140D0C0B0B0C1912130F141D1A1F1E1D1A1C1C20242E2720222C231C1C28'));
dbms_lob.writeappend(v_lob,30,hextoraw('37292C30313434341F27393D38323C2E333432FFDB0043010909090C0B0C'));
dbms_lob.writeappend(v_lob,30,hextoraw('180D0D1832211C2132323232323232323232323232323232323232323232'));
dbms_lob.writeappend(v_lob,30,hextoraw('32323232323232323232323232323232323232323232323232323232FFC0'));
dbms_lob.writeappend(v_lob,30,hextoraw('001108004B006003012100021101031101FFC4001F000001050101010101'));
dbms_lob.writeappend(v_lob,30,hextoraw('0100000000000000000102030405060708090A0BFFC400B5100002010303'));
dbms_lob.writeappend(v_lob,30,hextoraw('020403050504040000017D01020300041105122131410613516107227114'));
dbms_lob.writeappend(v_lob,30,hextoraw('328191A1082342B1C11552D1F02433627282090A161718191A2526272829'));
dbms_lob.writeappend(v_lob,30,hextoraw('2A3435363738393A434445464748494A535455565758595A636465666768'));
dbms_lob.writeappend(v_lob,30,hextoraw('696A737475767778797A838485868788898A92939495969798999AA2A3A4'));
dbms_lob.writeappend(v_lob,30,hextoraw('A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7'));
dbms_lob.writeappend(v_lob,30,hextoraw('D8D9DAE1E2E3E4E5E6E7E8E9EAF1F2F3F4F5F6F7F8F9FAFFC4001F010003'));
dbms_lob.writeappend(v_lob,30,hextoraw('0101010101010101010000000000000102030405060708090A0BFFC400B5'));
dbms_lob.writeappend(v_lob,30,hextoraw('110002010204040304070504040001027700010203110405213106124151'));
dbms_lob.writeappend(v_lob,30,hextoraw('0761711322328108144291A1B1C109233352F0156272D10A162434E125F1'));
dbms_lob.writeappend(v_lob,30,hextoraw('1718191A262728292A35363738393A434445464748494A53545556575859'));
dbms_lob.writeappend(v_lob,30,hextoraw('5A636465666768696A737475767778797A82838485868788898A92939495'));
dbms_lob.writeappend(v_lob,30,hextoraw('969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8'));
dbms_lob.writeappend(v_lob,30,hextoraw('C9CAD2D3D4D5D6D7D8D9DAE2E3E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFF'));
dbms_lob.writeappend(v_lob,30,hextoraw('DA000C03010002110311003F00F7FA2800A28033EF35AB2B2668DE656940'));
dbms_lob.writeappend(v_lob,30,hextoraw('27629C9E3F41F8D61DDF8AA63107B6B723731501F3D476C0E7D3BF7AE7A9'));
dbms_lob.writeappend(v_lob,30,hextoraw('5ADA44EBA38572F7A5A228B6AFAA4D133E250C4F0A81B03F5CFAFE551CFA'));
dbms_lob.writeappend(v_lob,30,hextoraw('E5DC3705236B9099F959C9CB0F5E71FCAB1E791D8A853DAC5F8FC47728A5'));
dbms_lob.writeappend(v_lob,30,hextoraw('E3904D1463F78651F9E08C67F2AD9B0D7ED6F1963901825270037427D8F4'));
dbms_lob.writeappend(v_lob,30,hextoraw('ADA1575D4E5AB86B2BC4D6A2BA0E20A28020BBBC82CA069A791511464926'));
dbms_lob.writeappend(v_lob,30,hextoraw('B85D5FC55717D1C91DB3BDBC247CA57EF483EA3A0EA30391DF3D2B9EB54B'));
dbms_lob.writeappend(v_lob,30,hextoraw('7BA8ECC2D1E77CD2D918B0C924CF08794AF95F2ABE4EEC7B1FA7A7F8D68D'));
dbms_lob.writeappend(v_lob,30,hextoraw('B8891136A0E7F889C9FAFD2B92E7A6F42705B8DAEC081CF352EF72A55D89'));
dbms_lob.writeappend(v_lob,30,hextoraw('53C005B8271C0C517443466B8646DDB7E5279C038CFF009C55F824136E0C'));
dbms_lob.writeappend(v_lob,30,hextoraw('8BB98E361E140F5CFAFEBF4E29A959D824AE8E8349D4DE0912CEE5CBC6FC'));
dbms_lob.writeappend(v_lob,30,hextoraw('45237553FDD27F974FE78E86BBA9CAE8F26BC3965A750A86EAE63B4B6927'));
dbms_lob.writeappend(v_lob,30,hextoraw('93EEA0CE0753ED56DD95CCA29B7647966BDAE4BAB5C331761006F9533FAE'));
dbms_lob.writeappend(v_lob,30,hextoraw('2B3E362DD8818E17D4579D295DDCF769C1422A28596E1124B743B864B391'));
dbms_lob.writeappend(v_lob,30,hextoraw('9C1C0C0CFEB5AD6F7A820DEA32490080718CF734031C9A81915C02892630'));
dbms_lob.writeappend(v_lob,30,hextoraw('70738FAD3C4985DD2EE91B079E31DBFF00AFFA7E13A5ECC56B6C292CCC4B'));
dbms_lob.writeappend(v_lob,30,hextoraw('82727B7BF4FC2B6AC6C629103FDEC0CF03A516BB2272E58DD1A575630DC5'));
dbms_lob.writeappend(v_lob,30,hextoraw('8BEC0526C0C371F2B7627F1E31E848AD1D1EF3EDDA6C52B7DF1F2B7D4576'));
dbms_lob.writeappend(v_lob,30,hextoraw('517AD8F3AA5E50BBE8CBF5C3F8EF555402C43E30BCA81D58FAFB007F1DC3'));
dbms_lob.writeappend(v_lob,30,hextoraw('D2AEB3B405858F3554702D322C8CA0BB28EAE3A9F5C7A54B1E6465CF51C7'));
dbms_lob.writeappend(v_lob,30,hextoraw('1CE7EBEB5E79ED17E7B269203388D9BCA6CB123A29EB8F7E074A9AD884DA'));
dbms_lob.writeappend(v_lob,30,hextoraw('7FE5A10547246E18E8DF8FF9EB57B19EE3D61324477463CC3D15BB7FF5EA'));
dbms_lob.writeappend(v_lob,30,hextoraw('F5B58B2C8CB3CA418F219319E073DBD49A51D5EA293B2D09D9ED2594ED89'));
dbms_lob.writeappend(v_lob,30,hextoraw('B29C601F957E807A93FF00D7A7BEA8414318C48A32481CB7E149BBB2795B'));
dbms_lob.writeappend(v_lob,30,hextoraw('DC946B33F958F314311C85CE4D6AF8426DE2FA3EC24DE07619247F4ADE83'));
dbms_lob.writeappend(v_lob,30,hextoraw('F791CF88828D3763A7AF23F115CA5D6B77C66DD812C8831DB6BEDFE4BFCA'));
dbms_lob.writeappend(v_lob,30,hextoraw('B5C46C8C702BDE6CAD696915F49E4DBDB3999D485CE7E56C8E7DFBFE75B5'));
dbms_lob.writeappend(v_lob,30,hextoraw('776569A6C8634F2BCD0A4614EE0ADB8E0F4FEE81D79E7DAB9743D0727751'));
dbms_lob.writeappend(v_lob,30,hextoraw('284F7AD3BB289F0848DDF30C0183C7D2A88BA45930CC14A9F948E327FA54'));
dbms_lob.writeappend(v_lob,30,hextoraw('6ECBD958B8978D23088156C750DC151EBFD78A626A11F98D2461CE09C6E6'));
dbms_lob.writeappend(v_lob,30,hextoraw('C0CFAFF2EF5765BB22CF64352FC85755908DC30C40EDE9EDF8535EEFE7CA'));
dbms_lob.writeappend(v_lob,30,hextoraw('92EDFDEEB525D8920B832B3166CB31C6075AECBC0A3CCB7BFB903E479FCB'));
dbms_lob.writeappend(v_lob,30,hextoraw('5F7DBD7F5623F0ADE87C47262DDA9B3ADAF22D42C649F5FD5215C7991DDC'));
dbms_lob.writeappend(v_lob,30,hextoraw('8719C70C778FD1856989F85330C0BF799AB0F91A0D9C92970D70C309B739'));
dbms_lob.writeappend(v_lob,30,hextoraw('EDEB5CDDC5D1B8DCD9C31E093FCEB8D773D18EED9599811B0700FDDCF19C'));
dbms_lob.writeappend(v_lob,30,hextoraw('74A81DDA53E4AA7FABCE463922A96837A8EB2D40850A371740470719FA63'));
dbms_lob.writeappend(v_lob,30,hextoraw('9351DC5C484ACB90C87F8D40E467BFBF6A609752FA4F68D1DA28683CC903'));
dbms_lob.writeappend(v_lob,30,hextoraw('093CC919515B9DA5883903E800E9EF86C7776859930AAACB90D248C31863'));
dbms_lob.writeappend(v_lob,30,hextoraw('9CE3F8B1C01D3BE29DBB1241F6E31420A2EF958F9712F42CE781FA9AF5EF'));
dbms_lob.writeappend(v_lob,30,hextoraw('0B59AE99E1CB3B61CED4C93FDE24925BF1249FC6B7C3AD4E3C6BF712358C'));
dbms_lob.writeappend(v_lob,30,hextoraw('98AF28F880D2685E2CB7D5578B5BF8C47231E8244E067D3823F33E86B5AF'));
dbms_lob.writeappend(v_lob,30,hextoraw('0E681CD849F2D5473BA8EA8F72013267390A09FE23FF00EBAA0F74002B1B'));
dbms_lob.writeappend(v_lob,30,hextoraw('6E217927D735C518D91EB3642B78ADFBB62DB58608E9FE7EB50BDD345228'));
dbms_lob.writeappend(v_lob,30,hextoraw('9F12089C286C7250FF00FAFF004AA15FA8933B41383B880CB90CBEA3FC8A'));
dbms_lob.writeappend(v_lob,30,hextoraw('B4976509750A55802EA46383DC7B67FF00AF49AB949D88E475624C5856EB'));
dbms_lob.writeappend(v_lob,30,hextoraw('B33918F51EDEDD45316651B8B3E028CB31E8B42417373C2168359D612665'));
dbms_lob.writeappend(v_lob,30,hextoraw('65B4B51F331EC0F6FF0079BA7B0C9AF5F4D414E31803A003A0AEEC3C2D1B'));
dbms_lob.writeappend(v_lob,30,hextoraw('B3CAC6CEF3515D07C978077AE73C516D6BAF68D3E9F72400C331B919D8E3'));
dbms_lob.writeappend(v_lob,30,hextoraw('A37F423B826B671BAB1C91934D34786DC5C5D6837B2596A11E5233F788DD'));
dbms_lob.writeappend(v_lob,30,hextoraw('81DB3EABE8C3E879AB29790CB133ADC28600951B772BF049C30EFD0631F5'));
dbms_lob.writeappend(v_lob,30,hextoraw('22B8670B33D7A7514D157ED68C71B80E391D0FE5514F75E63200549C05DC'));
dbms_lob.writeappend(v_lob,30,hextoraw('09248078C8FD3F0A496A3E6D090DCB328576002F2327A8FAD491DE1936A2'));
dbms_lob.writeappend(v_lob,30,hextoraw('4818AF418CE47A0EB49C74294B51EFAB5A58B1DC5629003948BE66048EC3'));
dbms_lob.writeappend(v_lob,30,hextoraw('A27E27F0A82C3ED3AFCEA142DAD921F9980257F0CFDE6ABA74DB7764D5AC'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0AC8F4BD2AE2DEC2CE3B5B55D90A7BF2C7BB31EE4D6CC5A9FFB5FAD77AD'));
dbms_lob.writeappend(v_lob,30,hextoraw('158F22576EECB13EA679F98D64DDEA5907E6A0491C8EBC2DB528BCBB88F2'));
dbms_lob.writeappend(v_lob,30,hextoraw('57EE3A9C32FD0FF4E95E7B79A55D59485ED252CBD7E4E0FE2A78FCAB29C5'));
dbms_lob.writeappend(v_lob,30,hextoraw('3D4DE12712A1D52E631B278A3723BB02A69575A0060DA8C74E2520563C8B'));
dbms_lob.writeappend(v_lob,30,hextoraw('A1D0AB77429D6198623B3841EDB896FE58A5DDAA5E64333221EA000831F8'));
dbms_lob.writeappend(v_lob,30,hextoraw('75A1410A559BF22E59E8E818198F987FBA385FFEBD75366ACA147000E000'));
dbms_lob.writeappend(v_lob,30,hextoraw('30056D1563094AE6D5BCC500E6AFC7764739AB322ECEED9EB59972EC73CD'));
dbms_lob.writeappend(v_lob,30,hextoraw('0C119173CF5AC7B951CF152CD119D2F71DAAB144CFDC5FFBE452B00E04A9'));
dbms_lob.writeappend(v_lob,30,hextoraw('C2F1F415247C9E6901A56E06056941DAAD125E8F8E956149C1E6988FFFD9'));
dbms_lob.writeappend(v_lob,30,hextoraw('FFE200754650585200000100020000019C002F0005004500780074006500'));
dbms_lob.writeappend(v_lob,30,hextoraw('6E00730069006F006E0020004C006900730074000000000076A8002F0005'));
dbms_lob.writeappend(v_lob,30,hextoraw('00530063007200650065006E0020004E00610069006C005F006200640030'));
dbms_lob.writeappend(v_lob,30,hextoraw('0031003000300036003000390037003100390061003100380030000000FF'));
dbms_lob.writeappend(v_lob,30,hextoraw('E201AB46505852000002000000000000FEFF0000000402001060615654C1'));
dbms_lob.writeappend(v_lob,30,hextoraw('CE11855300AA00A1F95B010000001060615654C1CE11855300AA00A1F95B'));
dbms_lob.writeappend(v_lob,30,hextoraw('300000006C0100000A000000010000005800000000000010600000000100'));
dbms_lob.writeappend(v_lob,30,hextoraw('01006C000000020001008C00000003000100A000000004000100A8000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('05000100B400000006000100C000000007000100D8000000001001002001'));
dbms_lob.writeappend(v_lob,30,hextoraw('000002000000B00400001210000001000000010000001F0000000C000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('530063007200650065006E0020006E00610069006C000000480000003002'));
dbms_lob.writeappend(v_lob,30,hextoraw('0010C06FD011BD0100609719A18012000000010000004000000000A7CD50'));
dbms_lob.writeappend(v_lob,30,hextoraw('1BF6C2014000000000A7CD501BF6C2011F00000007000000500069006300'));
dbms_lob.writeappend(v_lob,30,hextoraw('6F0073007300000000001F0000001F000000500072006500730069007A00'));
dbms_lob.writeappend(v_lob,30,hextoraw('65006400200069006D00610067006500200066006F00720020004C004300'));
dbms_lob.writeappend(v_lob,30,hextoraw('4400200064006900730070006C0061007900000000001F10000001000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('1F0000002F000500530063007200650065006E0020004E00610069006C00'));
dbms_lob.writeappend(v_lob,30,hextoraw('5F0062006400300031003000300036003000390037003100390061003100'));
dbms_lob.writeappend(v_lob,30,hextoraw('3800300000000000FFE276B74650585200000200010000F2F5FEFF000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('04020031020010C06FD011BD0100609719A1800100000031020010C06FD0'));
dbms_lob.writeappend(v_lob,30,hextoraw('11BD0100609719A180300000007876000007000000010000004000000002'));
dbms_lob.writeappend(v_lob,30,hextoraw('000000480000000300000050000000040000005800000005000000600000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000600000068000000070000007000000002000000B00400001300000080'));
dbms_lob.writeappend(v_lob,30,hextoraw('02000013000000E0010000040000000000803F1200000003000000130000'));
dbms_lob.writeappend(v_lob,30,hextoraw('00000000004100000000760000FFD8FFDB00840005050505050505050505'));
dbms_lob.writeappend(v_lob,30,hextoraw('050505050506050606050607060607060607080707080807070809080909'));
dbms_lob.writeappend(v_lob,30,hextoraw('0908090A0A0B0B0A0A0B0C0D0C0B0E0F0F0E101110141417010505050505'));
dbms_lob.writeappend(v_lob,30,hextoraw('050505050505050505050606060606060706060706060709080708080708'));
dbms_lob.writeappend(v_lob,30,hextoraw('090909090A0909090A0A0B0B0A0A0C0D0D0D0C0E0F0F0E111211141418FF'));
dbms_lob.writeappend(v_lob,30,hextoraw('C000110801E0028003012200021101031101FFC401A20000010501010101'));
dbms_lob.writeappend(v_lob,30,hextoraw('010100000000000000000102030405060708090A0B010003010101010101'));
dbms_lob.writeappend(v_lob,30,hextoraw('0101010000000000000102030405060708090A0B10000201030302040305'));
dbms_lob.writeappend(v_lob,30,hextoraw('0504040000017D01020300041105122131410613516107227114328191A1'));
dbms_lob.writeappend(v_lob,30,hextoraw('082342B1C11552D1F02433627282090A161718191A25262728292A343536'));
dbms_lob.writeappend(v_lob,30,hextoraw('3738393A434445464748494A535455565758595A636465666768696A7374'));
dbms_lob.writeappend(v_lob,30,hextoraw('75767778797A838485868788898A92939495969798999AA2A3A4A5A6A7A8'));
dbms_lob.writeappend(v_lob,30,hextoraw('A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE1'));
dbms_lob.writeappend(v_lob,30,hextoraw('E2E3E4E5E6E7E8E9EAF1F2F3F4F5F6F7F8F9FA1100020102040403040705'));
dbms_lob.writeappend(v_lob,30,hextoraw('040400010277000102031104052131061241510761711322328108144291'));
dbms_lob.writeappend(v_lob,30,hextoraw('A1B1C109233352F0156272D10A162434E125F11718191A262728292A3536'));
dbms_lob.writeappend(v_lob,30,hextoraw('3738393A434445464748494A535455565758595A636465666768696A7374'));
dbms_lob.writeappend(v_lob,30,hextoraw('75767778797A82838485868788898A92939495969798999AA2A3A4A5A6A7'));
dbms_lob.writeappend(v_lob,30,hextoraw('A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DA'));
dbms_lob.writeappend(v_lob,30,hextoraw('E2E3E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFFDA000C0301000211031100'));
dbms_lob.writeappend(v_lob,30,hextoraw('3F00FB2E8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A4240E49007BD567BEB'));
dbms_lob.writeappend(v_lob,30,hextoraw('38FEFDD5BA9F4322E7F2CE6A255210F8A708FAC92FCCA5194BE18CA5E89B'));
dbms_lob.writeappend(v_lob,30,hextoraw('FC8B54566BEB1A647F7AEE31F40C7F929A8BFB7B493FF2F89FF7C49FFC45'));
dbms_lob.writeappend(v_lob,30,hextoraw('4FB7A3FF003FA97FE071FF0032FD8577B51AAFFEDC97F91AF45662EB1A63'));
dbms_lob.writeappend(v_lob,30,hextoraw('E3179173FDEDCA3F3602ADA5DDAC98D9730393D964527F2CE68F6F46F6F6'));
dbms_lob.writeappend(v_lob,30,hextoraw('D4AFDB9E3FE6274AAC7E2A7523EB16BF3458A28041E473F4A2B5DF546614'));
dbms_lob.writeappend(v_lob,30,hextoraw('514500145145001451450014514500145145001451450014514500145145'));
dbms_lob.writeappend(v_lob,30,hextoraw('001451450014514500145145001451450014514500145145001451450014'));
dbms_lob.writeappend(v_lob,30,hextoraw('514500145145001451450014514500145145001451450014514500145145'));
dbms_lob.writeappend(v_lob,30,hextoraw('001451450014514500145145001451450014514500145145001451450014'));
dbms_lob.writeappend(v_lob,30,hextoraw('514500145145001451450014514848009240006493D00A1B495DE8900B47'));
dbms_lob.writeappend(v_lob,30,hextoraw('EB5837DE20B5B44B86B782E751FB344F2CAD64AAF0C5B14B112CC5822E07'));
dbms_lob.writeappend(v_lob,30,hextoraw('2D8DC40E715C4A78BEE2EEF02DD9686DFCB91A3B5B19BCA9657006D5F389'));
dbms_lob.writeappend(v_lob,30,hextoraw('0C580E700AE7D0D71D4C6D285B953A89FDA5F02D6D7E6D6FFF006EA67750'));
dbms_lob.writeappend(v_lob,30,hextoraw('CBF11593972F2462AFEF7C4F4BD9477D7CEC8F4AB9BDB5B45DD737105BF1'));
dbms_lob.writeappend(v_lob,30,hextoraw('BB1230C91EA17209FC335CEDF788ADE05CAC17F3864DE0B036916C61F2B8'));
dbms_lob.writeappend(v_lob,30,hextoraw('6203ED6EC70457995FBBCC7CF983C32CD34ABE54B2BBC862508C8CDE665B'));
dbms_lob.writeappend(v_lob,30,hextoraw('3F315CF42471575668EE34C8A693509E7D463B7FB2B5BB798C91C238FF00'));
dbms_lob.writeappend(v_lob,30,hextoraw('5921DA338042AE6B8AA62AB49AE694609FD94AF67DA5CCA49E9D5289E9D3'));
dbms_lob.writeappend(v_lob,30,hextoraw('CB28D35194DCEAB6ECEC9A4BD39754AFD798D793C5EE0FEEB4BB45DFCEE9'));
dbms_lob.writeappend(v_lob,30,hextoraw('E56B923AF7C27359EDAE5F5E4EA6396DEDE4D8CE9E55B43862A46F53952C'));
dbms_lob.writeappend(v_lob,30,hextoraw('49524F53D0D624563773E4AEE5551951B9138CF070707F1AD4834B96D8EF'));
dbms_lob.writeappend(v_lob,30,hextoraw('9248D582151B02CC46E52A4E7A038279CF1EB595E5FCF2B7F2B9C9C7FF00'));
dbms_lob.writeappend(v_lob,30,hextoraw('016EC77AA3429FC308F35BAFBCFEF7765B7BF9A389A5FED131AB0310489C'));
dbms_lob.writeappend(v_lob,30,hextoraw('00D32336EC85E3008F4EAD8E0559B19E2FECE7BEBDBCB95093F92AB09824'));
dbms_lob.writeappend(v_lob,30,hextoraw('7C6DF918C6EE199430C11819CF5E2B37FB1C491AAC7708C18EF1959B284F'));
dbms_lob.writeappend(v_lob,30,hextoraw('DE2EAAAC39E32453CE937DE4FD8CDC59B428DE6008C19B78C8237F95E600'));
dbms_lob.writeappend(v_lob,30,hextoraw('739DA5B1DE87CCADCB2827AEBEEFE52BA6D04941AB27CBAABE9D16E969F9'));
dbms_lob.writeappend(v_lob,30,hextoraw('8D9356667550B6ECB963BE4861DA0BE0B050F1E40CF1D69D6F2C6CFE5B44'));
dbms_lob.writeappend(v_lob,30,hextoraw('CDF2641B6B99A12A146ECEC3E647B40CE47967EA2B12EF48B9B695FCC0CA'));
dbms_lob.writeappend(v_lob,30,hextoraw('72AC09DC232ACA4E54E3279C6738A4B78DADB3712B31050C6AA8CC595FF8'));
dbms_lob.writeappend(v_lob,30,hextoraw('4B0C6D55E304E49C1E01AA729A69CB54BBB6EFF7DD3EFAA65AA74DC7DCB5'));
dbms_lob.writeappend(v_lob,30,hextoraw('9FF2E8DBF5563BA5125A44938BAD42CE2961CA1921250B28DE9896368CB6'));
dbms_lob.writeappend(v_lob,30,hextoraw('E1DF67E04516BE29D46DC9FB447F6BB741932C5FBF3803272B12ADC2E307'));
dbms_lob.writeappend(v_lob,30,hextoraw('2CF0941DDAB8F8EEAEEF664B5925976B3EE0AF2FCBD0B0281C85002E7180'));
dbms_lob.writeappend(v_lob,30,hextoraw('339AD5BC96C96C87D9DE1F3EDE416F0082D5A079E35059AE1A52DB89EDC8'));
dbms_lob.writeappend(v_lob,30,hextoraw('07A50A779276709FF343DD7A79C546C9DBB3EC734B0D07EED58AABCCFAC6'));
dbms_lob.writeappend(v_lob,30,hextoraw('FCA9ECEFBFE27A1D8788ECAF07CFFE8E720062C2588E7D254E3F302BA004'));
dbms_lob.writeappend(v_lob,30,hextoraw('3004104119047208F506BC2C89268D6E25DF1486525A681FCAB97E01F9C9'));
dbms_lob.writeappend(v_lob,30,hextoraw('1E5CD9084013C720193B715BD67AA6A3A546B7125CACD6825F2D9D7CD685'));
dbms_lob.writeappend(v_lob,30,hextoraw('148043DCC1B09B70718DE85E31C65D72057552C4D64ED2FDF4757B28D4EB'));
dbms_lob.writeappend(v_lob,30,hextoraw('B25A4B6DB7EE7057CB21BD297B36FECBBB85FB296EBE67ABD158FA6EB36D'));
dbms_lob.writeappend(v_lob,30,hextoraw('A861388A728AFB198157073CC4D9CB818F4079AD8AEEA7561563CD095D75'));
dbms_lob.writeappend(v_lob,30,hextoraw('EEBC9AE878F5294E949C2A45C64BA3FD1F50A28A2B42028A28A0028A28A0'));
dbms_lob.writeappend(v_lob,30,hextoraw('028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A'));
dbms_lob.writeappend(v_lob,30,hextoraw('28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0'));
dbms_lob.writeappend(v_lob,30,hextoraw('028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A'));
dbms_lob.writeappend(v_lob,30,hextoraw('28A0028A28A0028A28A0028A28A0028A28A0029090A0927007AD4734C902'));
dbms_lob.writeappend(v_lob,30,hextoraw('179090338E39249EC05717AEF8AE2B0696C6D5D25D55B2918257ECD6EDC9'));
dbms_lob.writeappend(v_lob,30,hextoraw('C3B161994283C7F7881C573D6C4428AD759744BD0DE861EAD792508B7AEF'));
dbms_lob.writeappend(v_lob,30,hextoraw('D3CF5F23A3D4F59B3D261F36E98877388A04C19A53CE36A646064724F03E'));
dbms_lob.writeappend(v_lob,30,hextoraw('B5E51AF78BF50D4BCDB54DDA75AE423C4A4F9ADD33BE5C29C13D80518E0E'));
dbms_lob.writeappend(v_lob,30,hextoraw('6B045DCD7575723536F3A593E68E7BC2C4ABA7CC6372482BC67615E9D302'));
dbms_lob.writeappend(v_lob,30,hextoraw('AB5ECF1DCC76A046CB3C6AEB24ACC242E377EEC16C976DA3E505892381D0'));
dbms_lob.writeappend(v_lob,30,hextoraw('57975AB4EABB5593E5BFF0F4E5F9DACE5DF5D3CAE7D16172FA3876A4E2AA'));
dbms_lob.writeappend(v_lob,30,hextoraw('54FE77B2FF000A7A7CF734B4DD41FCAFB0DCDFCB6366AF2CE5A30D34371B'));
dbms_lob.writeappend(v_lob,30,hextoraw('D0E11E25652588C29C92A401D39ACB768DE432200AA24DEA00FBBF3641C0'));
dbms_lob.writeappend(v_lob,30,hextoraw('E87D3078AAA408D82EE0E4004E53280FA1C93CFE5EF5A16F0C677336C0A1'));
dbms_lob.writeappend(v_lob,30,hextoraw('867BE38C9C745C8C9239AC15B56AD14FE57E9BF5D0F46C95DEAEEFB2DFB9'));
dbms_lob.writeappend(v_lob,30,hextoraw('659EEEEE605A59EE5822C6ACE8776D006C500B1236F6AD94D29A1C7DA58F'));
dbms_lob.writeappend(v_lob,30,hextoraw('9AC3222460368038DE46467F0FC6ABCB749B55226BA264081A4691C31500'));
dbms_lob.writeappend(v_lob,30,hextoraw('28076B0CA81C05C9152285C28DCA1943E79396C03819C8E3A9EB9E29DD2B'));
dbms_lob.writeappend(v_lob,30,hextoraw('72A56BEEFF00CBA19BBDAEF45D9161628D4B0032DB7191CE0E78C96EF8EC'));
dbms_lob.writeappend(v_lob,30,hextoraw('0D3A22EAB9794AB22EDC2A9C9E98E7D0FE351C2CB345B41DAD93DF249C63'));
dbms_lob.writeappend(v_lob,30,hextoraw('94CF3C8CFB66A5F302C43CC70C4905701700E3383DC739A2EBCBAFC992EF'));
dbms_lob.writeappend(v_lob,30,hextoraw('AAFEBD48CCF306E240A872DFBA247CBD06EF5CF7C8A9D6660CEC772AE634'));
dbms_lob.writeappend(v_lob,30,hextoraw('F9065416C8CE01049040EE734CDBB80C9DBB80C01C0C6738C81C75CF7A5F'));
dbms_lob.writeappend(v_lob,30,hextoraw('2C1E154672A08C061BB9DBB893B477E06323345E36E8BBE82B1696EAE618'));
dbms_lob.writeappend(v_lob,30,hextoraw('DB1289239300EE50F1EE07A159148E091CE3A9AA970916D53318119CA8F3'));
dbms_lob.writeappend(v_lob,30,hextoraw('2285304B720308F118048CE47CC3D0D3844E524669DE252724233EE1B7E6'));
dbms_lob.writeappend(v_lob,30,hextoraw('52A3014ED39239A75F959A280CB2CF34B87334A931712609099531854C0C'));
dbms_lob.writeappend(v_lob,30,hextoraw('F773E98AA859F3252517AD96B67F2FEB627E1927CAB5766D5AFB7530A401'));
dbms_lob.writeappend(v_lob,30,hextoraw('26259773FCCB82C4286520ED182C4E78EC0734F2EEE512567786366708AE'));
dbms_lob.writeappend(v_lob,30,hextoraw('1C4418A9708B9C265B04FB81E94B2E426DF30E073B493CE41F9BD4617183'));
dbms_lob.writeappend(v_lob,30,hextoraw('8AAB940CCB181B95480483BB0BC77073927AE2A64ECFE7FF00034365AEFF'));
dbms_lob.writeappend(v_lob,30,hextoraw('00D799D0EFD3E3863B837135D5C81816AD1158C11C9667CF727A286E98C8'));
dbms_lob.writeappend(v_lob,30,hextoraw('CE6AC5A963334B348D6BBD2494C6B16E8C960C56311B14C238047538FA57'));
dbms_lob.writeappend(v_lob,30,hextoraw('3AAC59D3E6925DE00504B3229FBA01246073E9E95BC9747EC4F669159C8E'));
dbms_lob.writeappend(v_lob,30,hextoraw('6605A560F24B1B9258EC7919B68621B3B140E4FAD38D45A26EDE692E9AA5'));
dbms_lob.writeappend(v_lob,30,hextoraw('D3D2FB99CE9B4BAC9B6D36EDA27BF4B69E9A9349692DB33C9A65B8F3A2C3'));
dbms_lob.writeappend(v_lob,30,hextoraw('9B3B79D446EB8561258B2AAAA395663E4E42337431B290FD8685E214BE48'));
dbms_lob.writeappend(v_lob,30,hextoraw('20B83895D3F7723654C85782B223282928C1DCA79C8208078AE66D34F9C4'));
dbms_lob.writeappend(v_lob,30,hextoraw('66E249D2DC6D199A66652D27CDB523F2F2495206E0B9DA01040CE441770B'));
dbms_lob.writeappend(v_lob,30,hextoraw('25BCD7F6F0AA5C22457D750DAE5E595640AD34C123CE2EA366264C7CF26D'));
dbms_lob.writeappend(v_lob,30,hextoraw('39DCC173D90739495483B5676B3D2D513FB3257BB6DECFAB7BDF5382BD2A'));
dbms_lob.writeappend(v_lob,30,hextoraw('5563ECE6D4947453EB4E5B6EF75DD743D628AE7741D5CDFC222983195146'));
dbms_lob.writeappend(v_lob,30,hextoraw('26C1314ABD887C005F1D71C1EA322BA2AF429558D6829A4D774F74FB1E05'));
dbms_lob.writeappend(v_lob,30,hextoraw('6A53A15254E7BC5EEB66BBA0A28A2B5320A28A2800A28A2800A28A2800A2'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('00A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A2'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('00A28A2800AAD777496703CEE0B6DC0545FBCEE78551FD7D064F6A965963'));
dbms_lob.writeappend(v_lob,30,hextoraw('82292695C4714485DD9BA2AA8C927F0AF23F14788565DC88CC934A079432'));
dbms_lob.writeappend(v_lob,30,hextoraw('A7C8809CA93CE5657182C0038F5E0573626BFB28F2C6DED24B4F2BDECFF0'));
dbms_lob.writeappend(v_lob,30,hextoraw('D0ECC1E16589A9D5538BF79FE88B1E23F16322B5B594DFE992A959E68C92'));
dbms_lob.writeappend(v_lob,30,hextoraw('B6E9FF003C623C1DE71F33707DB3D3CBFCC79B28CA5B736E25F924E7AF23'));
dbms_lob.writeappend(v_lob,30,hextoraw('F5E6926937004B72DBB71DA0027273B780B823F9D46B2471801B706C0E76'));
dbms_lob.writeappend(v_lob,30,hextoraw('8231B861B2581E873DABC87277936DB93EBF8DBBDAE7D4D1A30A30E5846D'));
dbms_lob.writeappend(v_lob,30,hextoraw('F2DFA7FC31A26E3CE08253929118B7FDF7253EE64123A7427D29B9215580'));
dbms_lob.writeappend(v_lob,30,hextoraw('DAE4607420F76C81923827191DB22AA2B34CA9F2738665DD852549E42907'));
dbms_lob.writeappend(v_lob,30,hextoraw('A93D3356B8420AA988A9C307397619C61B0792071C003D6B37F7FF005B1A'));
dbms_lob.writeappend(v_lob,30,hextoraw('DACC96351BD005072C0E7381D4633B7B83D49ED51DDDC08E548A142E6091'));
dbms_lob.writeappend(v_lob,30,hextoraw('59D17953E6303DF07EEA9C75E78EF5623963DDB33BB0DBBE63C3B1E47DD1'));
dbms_lob.writeappend(v_lob,30,hextoraw('9FC326B2E69D65BC95634CBDB8456DC5922CB64952F9CF1B793CE3DEAA3B'));
dbms_lob.writeappend(v_lob,30,hextoraw('5EDB875D5DACBFAD0E8A22B7281995E32586DCEF1D3E663B781C11D735A9'));
dbms_lob.writeappend(v_lob,30,hextoraw('1ED758A2BA553216DEBB0907E509EC092475C1F6C1AC349576C71C20BBE7'));
dbms_lob.writeappend(v_lob,30,hextoraw('63A0C994B338DBB47078C1039E456DC4599E69E495D218446C421018E41F'));
dbms_lob.writeappend(v_lob,30,hextoraw('94B16DA01C023827DB02945A5EBD35FBFF00A6672F9FF5B58BE3CA91D42C'));
dbms_lob.writeappend(v_lob,30,hextoraw('4A483B43AC7B82919627380493C8E4E38E951F94327CB52DD3E461E5F0E7'));
dbms_lob.writeappend(v_lob,30,hextoraw('05816CAFB633FCAB3A7D562984A8A8C9146DC451925DCF1B8925801918C1'));
dbms_lob.writeappend(v_lob,30,hextoraw('E0706A28750B8B8F301DC220DE6791D3040F97A927214E491CF38AB77B79'));
dbms_lob.writeappend(v_lob,30,hextoraw('6DB7F4C849FF00C0B9BF1F962396268F259F7ABC659C2AED5C22ED3B383C'));
dbms_lob.writeappend(v_lob,30,hextoraw('B1C13DAA159E1C0555DCCC5A300EE65F538DBC1E47527D6B3A49DD90C670'));
dbms_lob.writeappend(v_lob,30,hextoraw('CCC1B74AC49E7036850187037707EB598B6D216CB9C062195B20E40230A4'));
dbms_lob.writeappend(v_lob,30,hextoraw('907AFB1EC6A2DCCB7F3FEBB0D43BB7F79B4D76CF195854145600E4153B89'));
dbms_lob.writeappend(v_lob,30,hextoraw('20E18863D307FF00D552DB46CAF22319258E51B99882A06C60C0E14B90C1'));
dbms_lob.writeappend(v_lob,30,hextoraw('73C8DD819150A35B452D8C533A4DE63BB48D03A99204882ABFCCC0C6AC79'));
dbms_lob.writeappend(v_lob,30,hextoraw('55E4F724738A75C5DA4B24C96C30D6ED20455995FF00728EAA086648D990'));
dbms_lob.writeappend(v_lob,30,hextoraw('E771DA18FCB9C000D0A1B4AEAF16B477BFAAD2DD3B8397D949D9A7AF4FF3'));
dbms_lob.writeappend(v_lob,30,hextoraw('DC04B1C4D98D020620063FBE91578DC376D18CB743B14E3D6A097F7A436C'));
dbms_lob.writeappend(v_lob,30,hextoraw('90F180228F7966C9CB1390E3E6C67249A8030F36363961BF2CA858614609'));
dbms_lob.writeappend(v_lob,30,hextoraw('F9B69E383C8C9E2AD44E88C18C71824B45B99861BD3860DC1207240A5577'));
dbms_lob.writeappend(v_lob,30,hextoraw('BB56D75FE997156E9A89E53C8AA1D988042901D9885E3A2F238E9D4FD2AD'));
dbms_lob.writeappend(v_lob,30,hextoraw('AC322A32A267CA6037B2E4F24E4F6C91F8E39C55AB0B72E703E45C0208FD'));
dbms_lob.writeappend(v_lob,30,hextoraw('E6492000D8000C8E3A7A5741676FE5B2BAED42A9B4672C7247DD209CFA95'));
dbms_lob.writeappend(v_lob,30,hextoraw('1C75F5159ABB7A2D9EB6B19D4A8A09ABEA52B589C931CB36F68A356CFCC7'));
dbms_lob.writeappend(v_lob,30,hextoraw('0AC4B2EDDDD7693F3600F4ABC6C6585C5C46490ADF32FDC27E601B691DBE'));
dbms_lob.writeappend(v_lob,30,hextoraw('6049E9EB8AD1863112932CD070D13AB07D8036E7CA00DC0E0118CF230303'));
dbms_lob.writeappend(v_lob,30,hextoraw('15BD12C4C8BE60566750DF2FDD2A47192BC7438EBCD74D18ABA8B695FD0F'));
dbms_lob.writeappend(v_lob,30,hextoraw('33118B707751E68BD1DBAE9AF43CDDA36D22FADE4B7902D85EBCD736B196'));
dbms_lob.writeappend(v_lob,30,hextoraw('5896CEEF6466E215E1818651BA4455C6D01D4615067D36C6ED2F6D62B84F'));
dbms_lob.writeappend(v_lob,30,hextoraw('E3452C3D1880483C0E45733AE6991EA36175671048AE964FB459CEC4058E'));
dbms_lob.writeappend(v_lob,30,hextoraw('F203BA267C6E2AAC098DDB19F2DDB1D6A97856FF0032A4603AC37B1EF50F'));
dbms_lob.writeappend(v_lob,30,hextoraw('9F966440D229DC8A723238393F3609E2BBA32F67569CD3BAAAFD9D5D2D69'));
dbms_lob.writeappend(v_lob,30,hextoraw('A7A4BFEDEDFD79998D78AC4E1A53FF0097943557DE54ED7D7F1FBBCCEFA8'));
dbms_lob.writeappend(v_lob,30,hextoraw('A28AF44F1428A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028'));
dbms_lob.writeappend(v_lob,30,hextoraw('A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A'));
dbms_lob.writeappend(v_lob,30,hextoraw('0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028'));
dbms_lob.writeappend(v_lob,30,hextoraw('A28A0028A28A0028A28A0028A28A0028A28A0028A2A9EA17B1E9D65737B3'));
dbms_lob.writeappend(v_lob,30,hextoraw('7DCB689A4C0C02C7A2A8C9032CC428F734A52518B93DA29B7E8B5638C5CA'));
dbms_lob.writeappend(v_lob,30,hextoraw('4A3157949A49776F44721E2DD662891ECD5C8580C52CDB0FCD24CD930DB6'));
dbms_lob.writeappend(v_lob,30,hextoraw('DC1C8270EC79C003835E21753C92CF249310E1E4F30B063862EC71C1038E'));
dbms_lob.writeappend(v_lob,30,hextoraw('70323803A56F6B93CED6F09BAC473DC3B5DC91E4F98259FF007837E46784'));
dbms_lob.writeappend(v_lob,30,hextoraw('3EFF007B15CB2ACB2AA11B8C2982766475215464E3F88838E3BD78552A4A'));
dbms_lob.writeappend(v_lob,30,hextoraw('529CE5F137F725D3E5B1F5F84C3C68528C23AA5BBFE66F77FE44F2CACCDB'));
dbms_lob.writeappend(v_lob,30,hextoraw('0282570DB17191B7190092540C77C1E94C10C8CE1DFF00780F0739F2FEF6'));
dbms_lob.writeappend(v_lob,30,hextoraw('3059461F0791838F7A8F72441D412F2632163DBB41DC30256E00C0E7F8BB'));
dbms_lob.writeappend(v_lob,30,hextoraw('76CD279136229A51E52C8B942CC137A2F5C06E7249001CE09F5AE7BFA6DA'));
dbms_lob.writeappend(v_lob,30,hextoraw('7FC03B6CAE5B5C5AB930CB223A1DE5BCBC15C1DC31B9CE1863A647E95379'));
dbms_lob.writeappend(v_lob,30,hextoraw('D1BA050444F239604E5C28C96EA412724EDE73D7BE2AA4E524611DBD9C96'));
dbms_lob.writeappend(v_lob,30,hextoraw('C231BB0E4B1705BAC8C0950460E00F4A75B79AAF9C1E307F749C67EF1E4F'));
dbms_lob.writeappend(v_lob,30,hextoraw('CD82BD7240208A15DA4FAF9DBF4B89A5D77346287C8DAF2EE7F6C151800E'));
dbms_lob.writeappend(v_lob,30,hextoraw('401F78751838233CD72CB3A4771782FADD8B26A0B1B4D1B641FB4BB3C523'));
dbms_lob.writeappend(v_lob,30,hextoraw('A860CBB58A8E01C03935D398CBB26363B3A11F2ED246EC12494F97A91D0B'));
dbms_lob.writeappend(v_lob,30,hextoraw('7D38AAD7A9158DFC73CAB1186F2CA50B26D9194DD4215373ECE031460464'));
dbms_lob.writeappend(v_lob,30,hextoraw('28213E99DA1B3566DB5D37DF5FC0CDEEB54BD56832D51924132178D6378E'));
dbms_lob.writeappend(v_lob,30,hextoraw('D9584F119159F12EE656FDE15C107705C67BD6CDADD324E2D2E1815CA3AC'));
dbms_lob.writeappend(v_lob,30,hextoraw('8CAB965E63941277021182F2319561D7AD6459DB3B79070A55104C855824'));
dbms_lob.writeappend(v_lob,30,hextoraw('923AE03A18CC9B9836783F2F06B61208EE60B76B694C1342CEC8FC398FA0'));
dbms_lob.writeappend(v_lob,30,hextoraw('0AC8487C3EDDACADE808E79A5F13DE37D2CFCD7A09DB4DCB0F1BDB6E0F18'));
dbms_lob.writeappend(v_lob,30,hextoraw('00B068E41820E47CDC062300F7E87381D2B39AE278DDD844CDB88185608C'));
dbms_lob.writeappend(v_lob,30,hextoraw('32BC16041E8C074C71DAB6C284B4D9218E2BCF3583410F2153F76CAC5D82'));
dbms_lob.writeappend(v_lob,30,hextoraw('2B2B7CD8DAA3A1CE0F159B84964609B76374DA32EA318277E080D8276E32'));
dbms_lob.writeappend(v_lob,30,hextoraw('7393449C5692DDADAFFE411BB5A6C2FDAFECE024F6F2A4F1C98963224CC6'));
dbms_lob.writeappend(v_lob,30,hextoraw('C065B7A90AC3A8E76E3BF4ABD0DC799129C7C8C18EE3DFE6C101BA673C1E'));
dbms_lob.writeappend(v_lob,30,hextoraw('47D2A14863811CAA076F2CB492CCFE5924BE30A3736E9319623241E3818A'));
dbms_lob.writeappend(v_lob,30,hextoraw('A10A859E492357810FFA4165709F34455405DA0B024B3313924E077ACF96'));
dbms_lob.writeappend(v_lob,30,hextoraw('2DBE5BDD74BDF7DB5B5EFF002D47D3A3F3FF00817375B0248D9184677070'));
dbms_lob.writeappend(v_lob,30,hextoraw('892E5B00E549C2A9192700103E9C542D218E557DA8ACA18F03EEE0E30580'));
dbms_lob.writeappend(v_lob,30,hextoraw('1EA0E00C1047154EDCCD24D25C5C8263918ECDDB7785C9DA1BCBC8C2F000'));
dbms_lob.writeappend(v_lob,30,hextoraw('C939E0D74DA4DBDBF9927DBDAE6E6231C851ADC2C61642DB57E590100056'));
dbms_lob.writeappend(v_lob,30,hextoraw('39624F38C2D5421CCDC5CA3793DDF6F9762253518F372B692D92D6FDB528'));
dbms_lob.writeappend(v_lob,30,hextoraw('C91A845B887CE845C2852A9F298E5DA090776DDC8EBBB69041CE719C1A83'));
dbms_lob.writeappend(v_lob,30,hextoraw('3133B149236DB2B8393B8039CEE54C2E17209C32F19E4935D1EA5610CD1D'));
dbms_lob.writeappend(v_lob,30,hextoraw('B2E9F1AD9F93E6167927791E62EAB82576851B4063C0C7CDC0AAA74D3039'));
dbms_lob.writeappend(v_lob,30,hextoraw('919E290181433B03BB27865C0627728E4E4F20E78CD5558A4D2E7552C95E'));
dbms_lob.writeappend(v_lob,30,hextoraw('4B4BBEBBA4FA934EA45ABFBD16DBB45DAFBF95D6DB6A4F691CD16C932046'));
dbms_lob.writeappend(v_lob,30,hextoraw('4970590ED73C02BB98F6E067AE4FBD7456D342CD89581319F2CE01552548'));
dbms_lob.writeappend(v_lob,30,hextoraw('2000080C4103D6B234D6B640F6D2E5D5594C24BEE2B1B6E0C19C1237039C'));
dbms_lob.writeappend(v_lob,30,hextoraw('1C83D88A4BEB9F218792CEDBC998C6189512310738C8CE4718C8F63C7392'));
dbms_lob.writeappend(v_lob,30,hextoraw('BAD53D7AAFE919545ED24E0D34FA49591D5058660777CCB13162A4E1959D'));
dbms_lob.writeappend(v_lob,30,hextoraw('711BAB0233D0A927A6EAB314FF007630863568D7196FB8142AA80391C1C1'));
dbms_lob.writeappend(v_lob,30,hextoraw('C1FAD7130EB2F146F14B93B5C85E0AB2ED0490430193C8C641FCC73663D5'));
dbms_lob.writeappend(v_lob,30,hextoraw('A109E66E62D9DA85D3694241CF463D8E01C0E319ABF69A2567177EDE6724'));
dbms_lob.writeappend(v_lob,30,hextoraw('F072774F55F675BFCFEF3B0BCE4290A18BF0D8DA40E38C86E0E781C579E5'));
dbms_lob.writeappend(v_lob,30,hextoraw('B4ED67AF5DC7E64A7CBD5EE2F218C8C6E4BDCDC2FA008A25DA3209C463D6'));
dbms_lob.writeappend(v_lob,30,hextoraw('B467D45E4C832794003B382C38CB0562AC0825724679C76AE5F526496F2D'));
dbms_lob.writeappend(v_lob,30,hextoraw('66460F398A38F0BF301E4CC76B2F21882B21079E303F1E872E7A725D55A4'));
dbms_lob.writeappend(v_lob,30,hextoraw('BFC4B4BF7D5366986C3BA69C25EF2945C5E8F6DF7FC0F728DC491A48BD24'));
dbms_lob.writeappend(v_lob,30,hextoraw('4571F46008A7D65687319F4AB290E73E598F9EBFBA768C7E8B5AB5EC5397'));
dbms_lob.writeappend(v_lob,30,hextoraw('34212EB28A6FD6DA9F37523C95270FE49CA3F73B05145156405145140051'));
dbms_lob.writeappend(v_lob,30,hextoraw('451400514514005145140051451400514514005145140051451400514514'));
dbms_lob.writeappend(v_lob,30,hextoraw('005145140051451400514514005145140051451400514514005145140051'));
dbms_lob.writeappend(v_lob,30,hextoraw('451400514514005145140051451400514514005145140051451400514514'));
dbms_lob.writeappend(v_lob,30,hextoraw('00514514005705E34D5161FB269BB0488E1F52BA5660A1A1B30648E3E411'));
dbms_lob.writeappend(v_lob,30,hextoraw('F34E10FF00C040E735DED783F8A6E85C6A7AECF247BD566874C452C0FF00'));
dbms_lob.writeappend(v_lob,30,hextoraw('A998798701811C443FAF5AE3C6CDC69C629DB9E5BFA6ABF1B1E8E594A352'));
dbms_lob.writeappend(v_lob,30,hextoraw('BB9495E34A0E5FF6F3D17F9FC8E2F51D527D4677B89DC48D34CD305DD808'));
dbms_lob.writeappend(v_lob,30,hextoraw('4820807038C703D3A557BDB9F3238E08DBC88A352560562D891B962CD81B'));
dbms_lob.writeappend(v_lob,30,hextoraw('8B772147E3515D59BC50DA970A04B17DA558392CC849C640270060F0403C'));
dbms_lob.writeappend(v_lob,30,hextoraw('73914F5D3666322ADBC6CD6D0ADD4DE748161484B46A8F23B322AC659D47'));
dbms_lob.writeappend(v_lob,30,hextoraw('DF1F7864F35E5495DE9B2F9EDFE47D546D15156B5D5BC97919D13C89F282'));
dbms_lob.writeappend(v_lob,30,hextoraw('D873F7029746750CAADB7904F2403DB3DEAC233DC4C44CC542A1DA4273C1'));
dbms_lob.writeappend(v_lob,30,hextoraw('270157A1CE49E41C7E5575349BB67B88963F2E4B5805CDCE5A33B610C9F3'));
dbms_lob.writeappend(v_lob,30,hextoraw('B3330431EE75C1DE410475A963D1AE5E59C49E545F645F3AE1A69A288451'));
dbms_lob.writeappend(v_lob,30,hextoraw('B1440ECC4AA042D228C8206586719A4E37F2D3EEF31F32D55FA14D0B45E6'));
dbms_lob.writeappend(v_lob,30,hextoraw('11842E817AA9C2649DBEA09619CF5C70315A508C3447CBDC3CB2C3A97393'));
dbms_lob.writeappend(v_lob,30,hextoraw('B81232C471C00473F5AD14D25ADE45844B125CCCA40F3A78230149520DBB'));
dbms_lob.writeappend(v_lob,30,hextoraw('BBE1D9C15395C7CA71D09AD787485B39ADE1B82239991E431F9C85CAA12C'));
dbms_lob.writeappend(v_lob,30,hextoraw('C542E4B6D43B8B7CD8C723BD4DB76B6DAFF95C994969DDAD3D176324C8D2'));
dbms_lob.writeappend(v_lob,30,hextoraw('488CC598ED4DCB1A2C18088B1AA0D8B8C04503EEE49E482726B4AEF48BB9'));
dbms_lob.writeappend(v_lob,30,hextoraw('6DA0B8473144AEE8E8A818CF14D1E1CC71B14E621F3F5C9C151D6B567BA8'));
dbms_lob.writeappend(v_lob,30,hextoraw('2DD1628C4853CC6977485915506D8C385CAB00581E71EE0600AA97BAAC71'));
dbms_lob.writeappend(v_lob,30,hextoraw('470452C7733486409208E3192C31B5628C120800EE67618201356A5CAEFE'));
dbms_lob.writeappend(v_lob,30,hextoraw('5BBEECCBDE95B955B5FC0E49239CB225C5AED9ACA696059A16552CB23068'));
dbms_lob.writeappend(v_lob,30,hextoraw('623190AED84F98104804F23279D70CB023AA05452D9504E0E40C0206E033'));
dbms_lob.writeappend(v_lob,30,hextoraw('9CFF00FAAA1998992631E14E40C394F3085E00F3142AB0DAC141EB91DAA2'));
dbms_lob.writeappend(v_lob,30,hextoraw('97695308F97692DB9C6DDF8C00559BA2E0AE3A678A87352BB8AB2F5FD4B5'));
dbms_lob.writeappend(v_lob,30,hextoraw('0E55ABBBDFD7BE88B8C8F7B17EE491790100071B449B70420DCC4F2492AB'));
dbms_lob.writeappend(v_lob,30,hextoraw('CE3DB3496D6E11A3F2646139558CACC0C6ECF9562491B908233B4E73D381'));
dbms_lob.writeappend(v_lob,30,hextoraw('51DB5D7D9D183A962CECD801642AD8F94918EA063048E38AD88E68A61343'));
dbms_lob.writeappend(v_lob,30,hextoraw('22C8EA4EE57558C950A7950CB99170133B89385380685EF2D7A697F5FF00'));
dbms_lob.writeappend(v_lob,30,hextoraw('213F76F6DBD489E25BA0232A4DC34BB1148D8C39CFDE271C1CE471D8E6AF'));
dbms_lob.writeappend(v_lob,30,hextoraw('45A2DCC966D736E152379632236651B4282E5412723710A7DF683CE05559'));
dbms_lob.writeappend(v_lob,30,hextoraw('11275B86844B10016430CF22B48A620413D41F2CA8F9B3B89DA453659673'));
dbms_lob.writeappend(v_lob,30,hextoraw('026E22389A50EC67271B91997F791A333AFF0011000270334B55BA725AE8'));
dbms_lob.writeappend(v_lob,30,hextoraw('BF5FBC9BDED66A2F996EAFF85CD7B57F2EDAD1218E19A49A5F32E65922DF'));
dbms_lob.writeappend(v_lob,30,hextoraw('B595950223B23050A09276E73DC1AD6BD997CF8F4EB7F25D6232B79BF655'));
dbms_lob.writeappend(v_lob,30,hextoraw('B41D0B2AEC46DEC808C83F2EE273B7BD7062F42EE30AB6FB762F2943B999'));
dbms_lob.writeappend(v_lob,30,hextoraw('598E0A2123A2F3824924F15B570D72D6064B8FB4BE9E66F2E179B9559501'));
dbms_lob.writeappend(v_lob,30,hextoraw('62150FF16C0F9E831D719AD69CE4E2E1C9BAD1DDE896EECBA6BA99CE11E7'));
dbms_lob.writeappend(v_lob,30,hextoraw('8CB9B5BBD1A5AB7B6BDD7406D46659B6798205C26E78DF72E7E600A01B0A'));
dbms_lob.writeappend(v_lob,30,hextoraw('8CF18C93D73C1A7C0EC64467125CF9CA4804ED8860072C9B03125467A824'));
dbms_lob.writeappend(v_lob,30,hextoraw('E718AC23246DB3CB49A45219BCC6DE46571B98A02A00030320F39EA0D6DC'));
dbms_lob.writeappend(v_lob,30,hextoraw('9A840B64B6E659A421373E42450AC815958A3EEDF206248519C104679ACF'));
dbms_lob.writeappend(v_lob,30,hextoraw('ADEEBFAD3A9AB5A2B2DC7492C892B07856270A1564762C06FF009F057250'));
dbms_lob.writeappend(v_lob,30,hextoraw('11C1C64E33CF3CD5569C1914022621558E0E5F0081801830EA71B883C63A'));
dbms_lob.writeappend(v_lob,30,hextoraw('5671BC5FB38096ED1A339F319E30DBB203637B727207CBC7D3150F25C328'));
dbms_lob.writeappend(v_lob,30,hextoraw('4058300ABEB9E8C5892339C8ED91CF4A9D5BD6FAFF009D8AB2FEB53519D9'));
dbms_lob.writeappend(v_lob,30,hextoraw('8AF9C1923CC9921949C8C606DC83DC039EBF855B865B78C113472CAB164F'));
dbms_lob.writeappend(v_lob,30,hextoraw('CB325BEEE542B6F68E5C838C9001FAD66473C2046ACD2391B9892EAAA246'));
dbms_lob.writeappend(v_lob,30,hextoraw('C1E081938EB838E73E9CD69E75924DF90EEB2E72E4B679C905B7153D3B63'));
dbms_lob.writeappend(v_lob,30,hextoraw('9E7DEA937BEEC4D5F4E9E4DAFC8D9798189D941019C9518C81827081B20B'));
dbms_lob.writeappend(v_lob,30,hextoraw('1E7AE074AA5338F3AC9F241105E96E58619638C30E06428F623200A6349D'));
dbms_lob.writeappend(v_lob,30,hextoraw('766DF972E417628B9C70091EA3D7D3D29972F2C4D04CCAC42D84D323E339'));
dbms_lob.writeappend(v_lob,30,hextoraw('127EEF7162083BB91CFE75B475BA5777FCDE8B4F999BB2DF4B27FF00A4B3'));
dbms_lob.writeappend(v_lob,30,hextoraw('D83C1EECFA245B94295B9BA5C03B871331E0E4FAE3A9AEA2B91F022B2F85'));
dbms_lob.writeappend(v_lob,30,hextoraw('B4B670434C2E67C312C712DCCACBC9E4FCA4575D5EC50FE143E7F7733B1F'));
dbms_lob.writeappend(v_lob,30,hextoraw('298AFF0079ADE5524BE69D98514515B1CE14514500145145001451450014'));
dbms_lob.writeappend(v_lob,30,hextoraw('514500145145001451450014514500145145001451450014514500145146'));
dbms_lob.writeappend(v_lob,30,hextoraw('6800A29293340AE3A8A4A5A0614514500145145001451450014514500145'));
dbms_lob.writeappend(v_lob,30,hextoraw('145001451450014514500145145001451450014514500145145001451450'));
dbms_lob.writeappend(v_lob,30,hextoraw('01D393D057CC1A8DC9B9B59EEDFF0078D7BA95FC85559637F37728424B60'));
dbms_lob.writeappend(v_lob,30,hextoraw('63E566EBCF72326BE97BB62B6974C3395B795863AE42135F2D48DBAC61C2'));
dbms_lob.writeappend(v_lob,30,hextoraw('2A9DF76410595A2CDCE40EB8C8C8C67D79AF371EFDEA6BB27F8BBFFEDA7B'));
dbms_lob.writeappend(v_lob,30,hextoraw('993A56AF2B75A7F77BDFE65EB99ACAE92CC1736D246F6966C932991520DA'));
dbms_lob.writeappend(v_lob,30,hextoraw('5A5B9DD1C6418D5BAAAB3498270A7BCF67776725DEA705C39B58AF2E6DA3'));
dbms_lob.writeappend(v_lob,30,hextoraw('4BF685E78D2CED6612B62DF76E632AAA20564C8E7017208C0DACE1901D99'));
dbms_lob.writeappend(v_lob,30,hextoraw('1872C73B7DD8023238E87A9C539225C8557276B1249240246074E800C9C6'));
dbms_lob.writeappend(v_lob,30,hextoraw('335C1CCAF7693F2DFB5D3FEBA9EFB4ECD5DAECFCF7B9D4D96A10BEB3A889'));
dbms_lob.writeappend(v_lob,30,hextoraw('228DED6FC0B349AF632D64209643CCB145708D1A801781B8AE38C8AD1D33'));
dbms_lob.writeappend(v_lob,30,hextoraw('45BE9F4FD6AEAC2D63B9BB8A3821B6B798AECB944921B9982EEC02258964'));
dbms_lob.writeappend(v_lob,30,hextoraw('8D4EE4DAFB78C567E8FA4BDC5C88B7728164776DACBCE540E581C91EABEB'));
dbms_lob.writeappend(v_lob,30,hextoraw('5EA6F25969965B2011ACC0441FE6456DC08CE0306CF048C12319C528CE2A'));
dbms_lob.writeappend(v_lob,30,hextoraw('3776B46FBBDDBD3A1CD88A92A6D469EB527CAAD6BC524D6B2D4C5F106962'));
dbms_lob.writeappend(v_lob,30,hextoraw('6B7D3C41696F68E974B3CFB1A355B78E0B59834711279DEDB542A9E73581'));
dbms_lob.writeappend(v_lob,30,hextoraw('A9C8D7AF0BA6E32DB4FF00691248EA822F2449E692E5D4132C619061B2C5'));
dbms_lob.writeappend(v_lob,30,hextoraw('C0E49ACDD43577BA25A547545380C870E645DC9863C8C60F3CF61D2B20DE'));
dbms_lob.writeappend(v_lob,30,hextoraw('623121568E4F314A847382A0EFF9B27231204DB8180467347B4E6F79A693'));
dbms_lob.writeappend(v_lob,30,hextoraw('95DEBF32A9D2946314DA94968B4BEB2EDAEA6B5E5DBDDB4D72E8D2BF9652'));
dbms_lob.writeappend(v_lob,30,hextoraw('341186860B78CEF288899F2D57F8428C649CF24D62BB2CE62E256404ED24'));
dbms_lob.writeappend(v_lob,30,hextoraw('3AEF66CB1C2060C147F08CF19C915426BD9EE32C5A65070C4B1DE4024E3C'));
dbms_lob.writeappend(v_lob,30,hextoraw('C3D012A4B9E73F8D4F3DEED8A22CDB7E50CAB0A10538009321525816248C'));
dbms_lob.writeappend(v_lob,30,hextoraw('8E31C75ACDB94B45E7F79D0A2A0ACAD75BDBA7922EDC46B1052CEB1C0154'));
dbms_lob.writeappend(v_lob,30,hextoraw('797111BCB2803EFCAAFF003B124F5C63B5508AE897682E76B2A18C893243'));
dbms_lob.writeappend(v_lob,30,hextoraw('05C8E8DC0E060F391EDCD57BAD45EE51239826FDE6413705B61503619307'));
dbms_lob.writeappend(v_lob,30,hextoraw('0B92718C60839246310CAAE3058ED460DB54608529DBA655B69C2E4720D5'));
dbms_lob.writeappend(v_lob,30,hextoraw('4236493D24FAF990DF55B5FF00ADCDF72F6E0F967CFB7661877218824ABE'));
dbms_lob.writeappend(v_lob,30,hextoraw('1F691F282320A81E9CD01D65422D0959A1E44329E5C0E782A46F39231901'));
dbms_lob.writeappend(v_lob,30,hextoraw('81E9915CBC378F6B26496F2CBED28A482BB88E48DA430C1048C0E9D6B41B'));
dbms_lob.writeappend(v_lob,30,hextoraw('F79892DCED8CFDE40E5CA923AA91D8E703BFEB4F5836BAB5A766BD04AD2F'));
dbms_lob.writeappend(v_lob,30,hextoraw('55F7AF5EE69BDD490319D43B246FB6400AE1A5917795C3127EF2F03209C1'));
dbms_lob.writeappend(v_lob,30,hextoraw('EB5A17128B686179E00E6601E349B39F2D4939DEF08CEE51B46010724F35'));
dbms_lob.writeappend(v_lob,30,hextoraw('4F4A9BC8C5CBCF033893F773C64497306DC6E53183B993079C6194F208C5'));
dbms_lob.writeappend(v_lob,30,hextoraw('51D46D312B5C47746E95819B281FCC61237CDB8B90E4EE273C13839C9AB8'));
dbms_lob.writeappend(v_lob,30,hextoraw('B8DF4F8FFAFC4992BBD5FBABAD8D0179030674B57815A27DA91C8CC9B4C8'));
dbms_lob.writeappend(v_lob,30,hextoraw('BB449BD7732A0C81821BE6203714979A81BCF99A28E040984B7B54FB3DA4'));
dbms_lob.writeappend(v_lob,30,hextoraw('2C301B601BBF85724FDE6CF2D58114B0A7FAC8DAE0F3857628A7AE19947C'));
dbms_lob.writeappend(v_lob,30,hextoraw('C36E7BB1CFB7795EE9FEFEDDDE67EF18856CF5ECD9CEDDC381D39F6A2539'));
dbms_lob.writeappend(v_lob,30,hextoraw('6B1D7CFA5FD46A115AE975F79AFF006958764916D5C758D5BCD31838C06D'));
dbms_lob.writeappend(v_lob,30,hextoraw('CA15B2412AA3A7734924B04CCAA2521D4BBBC92E0A7CCC1808D1173C6EC6'));
dbms_lob.writeappend(v_lob,30,hextoraw('DEA0E7F0C45661BCB36CEA0058F76F6C1F520FCCDB79C77ED565F645E486'));
dbms_lob.writeappend(v_lob,30,hextoraw('D9BCA0CC61F7380724339C61411D1721BBE2B36BC9DEC5DFF0367E451F7B'));
dbms_lob.writeappend(v_lob,30,hextoraw('CC90B1E1A50555101C058FCCE3FE06DDBA1AAB35E0655042AECCEE110F2F'));
dbms_lob.writeappend(v_lob,30,hextoraw('241E858487B0E301467B567FDA245C103CBC295EFC2303CB0E1981C9CF34'));
dbms_lob.writeappend(v_lob,30,hextoraw('E4E1012C91C6436031DD96F60172381C1E7078CD2B35FD5AE1F8961A78B7'));
dbms_lob.writeappend(v_lob,30,hextoraw('261CAEF0198151F2904E00C6E27DF38A7DB85794216C820B286E7A2EE3C0'));
dbms_lob.writeappend(v_lob,30,hextoraw('39CE477AA7B970725D76A6D3D06790C015E0919FA53ADE499630E485462C'));
dbms_lob.writeappend(v_lob,30,hextoraw('719C367033C1E703FAD559AB79E82FC8DE128280C9B13706E540F988C6EE'));
dbms_lob.writeappend(v_lob,30,hextoraw('0F249EA38EBD7359BAADD18E29CC6DB0FD9D6CE162A4E58C67E42086FF00'));
dbms_lob.writeappend(v_lob,30,hextoraw('58EFB3006012338EB53DAC819C34AED1A26657CC81F78E3276EE19EFDEAA'));
dbms_lob.writeappend(v_lob,30,hextoraw('E8F8D67C67A1D9ED630453CBA8DC1054E05B06BA1BC0E9BA448973DF35BD'));
dbms_lob.writeappend(v_lob,30,hextoraw('24D2724AF6D77DECEE97CDA473D469295F45CAEFE96D5FDD73E8DD0ED7EC'));
dbms_lob.writeappend(v_lob,30,hextoraw('3A369567801ADB4FB585B03037A44A1CE3DDB35AB505B8223C9FE26247B0'));
dbms_lob.writeappend(v_lob,30,hextoraw('E83F4153D7B34E3CB0847F96297DCAC7C8D5973549C9EF29B6FD5BBB0A28'));
dbms_lob.writeappend(v_lob,30,hextoraw('A2AC80A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A29334'));
dbms_lob.writeappend(v_lob,30,hextoraw('6680168A4CD2668B0AE3A8CD3334669D82E3B3466999A4CD3B05C7E69334'));
dbms_lob.writeappend(v_lob,30,hextoraw('CCD2669D843F3499A6669334EC04F4669B9A3353618F06969946695863E8'));
dbms_lob.writeappend(v_lob,30,hextoraw('A6D2D20168A4A5A0028A28A0028A28A0028A28A0028A28A0028A28A0028A'));
dbms_lob.writeappend(v_lob,30,hextoraw('28A0028A28A0028A28A0028A28A006488248E48CF491190FD18115F28DA9'));
dbms_lob.writeappend(v_lob,30,hextoraw('0F6F2413901E0BC96062182E18852D9F949FBC3A0EBC139AFAC6BE56B8CD'));
dbms_lob.writeappend(v_lob,30,hextoraw('878B7C45A748E512E2FAEDE260A0EDD9712DC440739C9466E7D12BCFC7C5'));
dbms_lob.writeappend(v_lob,30,hextoraw('F2C64BA465F859FF0099EE64B25CD5E0FAA8497CAEBF545730FEF4C02291'));
dbms_lob.writeappend(v_lob,30,hextoraw('3E7460251B8B13820E4633D4F1DBBD6DDADA6151DE291958C6EBB97EF126'));
dbms_lob.writeappend(v_lob,30,hextoraw('35202E33F331E3DCAE2B6D74DB3BA4CCB27948ED1B398DC1224230D860C0'));
dbms_lob.writeappend(v_lob,30,hextoraw('2AF00E73D4738AE92D8C50241988B980C8E1D482D831B460B1CEE18006E1'));
dbms_lob.writeappend(v_lob,30,hextoraw('C7272315E2F3A7D5AB3B3FE91EF4E765A46EFF00E07996B4AB348213883E'));
dbms_lob.writeappend(v_lob,30,hextoraw('CDE6C7E6C932EE120E42A01C28E38C923B73D6B93D6350F365755600AC85'));
dbms_lob.writeappend(v_lob,30,hextoraw('5972DC82D9627E660CEC7A9039273C55ED575F65CC6018BCC4070B22BBA2'));
dbms_lob.writeappend(v_lob,30,hextoraw('E080148DB824024FCBC67BD79C4D365F796770AC186F23232C4285C00C79'));
dbms_lob.writeappend(v_lob,30,hextoraw('C739C9CD5C5296CB4B6E65084949CE7BCADA6F634279F3E59F244425C05C'));
dbms_lob.writeappend(v_lob,30,hextoraw('E771524E5806CA85041E719CE79ACBB990B32C63323EEC79699EA406E581'));
dbms_lob.writeappend(v_lob,30,hextoraw('EC791F4E9D68867219889846B92AB233028DC92C170721739391D68F3522'));
dbms_lob.writeappend(v_lob,30,hextoraw('94CBE6BAB478D9F21C9E0648DC72064E3DFD2ABADB44BF33A15E177F6975'));
dbms_lob.writeappend(v_lob,30,hextoraw('ED7DD2F31EC24824485808DF6B2C87E65F94B330E8327A9EB93E9D2914A3'));
dbms_lob.writeappend(v_lob,30,hextoraw('A94132019272F2448C0203B81662155413C0C0249C62A2DF23BB4F14C932'));
dbms_lob.writeappend(v_lob,30,hextoraw('B1CE379439DC7E4F2D8738078E4E33D298B7052558E689448E0B61CED002'));
dbms_lob.writeappend(v_lob,30,hextoraw('F2D93280B9C6714D4777BFA7EBD49727B5F95F9EC22ED60CC1838DD90636'));
dbms_lob.writeappend(v_lob,30,hextoraw('F994A678E73D037078A92EAF119173B4A8554F30A618BE028F37680B9DD8'));
dbms_lob.writeappend(v_lob,30,hextoraw('01B68381C9279A8A5449559E0C2B49C92C03A6474F973B94903DB8C1EF58'));
dbms_lob.writeappend(v_lob,30,hextoraw('F13234AD6D75702189C2A799387F2896E0B36D42D80C463E5EF5A2B3BB4D'));
dbms_lob.writeappend(v_lob,30,hextoraw('BB74B6ABD37275BD9A57E8FB9619B1192ECC1F69214232EDC720E4E78239'));
dbms_lob.writeappend(v_lob,30,hextoraw('04E2AF698D3CA3F70D1C222899A5325C048B0851F3E612429381C0E4E36F'));
dbms_lob.writeappend(v_lob,30,hextoraw('24D43730CFB0308619360C3BD832CAAE51B1BC6C2CC3230482011E95CFF9'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0CCD12B373875273BB78C0C63039C1F4ED4F49475D5A7AF5FC84D34F4D2'));
dbms_lob.writeappend(v_lob,30,hextoraw('EADFA9DBACF0EDBB3FBA93CF39528AD8594C4236742413D30D823AF351CD'));
dbms_lob.writeappend(v_lob,30,hextoraw('75242F6F70BBB6DBB23158E47495CEE3BC3B039208E080178E983CD64DA4'));
dbms_lob.writeappend(v_lob,30,hextoraw('F0B2476F2B6D69093B95B9527015FA800AE39539241A7A5E3433982F1123'));
dbms_lob.writeappend(v_lob,30,hextoraw('9626642C000B2678391D81EA31E9509BB3D13B5EFB5CA504FAB5DBB7E1A1'));
dbms_lob.writeappend(v_lob,30,hextoraw('1CB74F2B193CC246D2CFB80DAA793B768F638E87AF1496F3124C85B685F9'));
dbms_lob.writeappend(v_lob,30,hextoraw('4EDEA7D4E38C719FA53AE6D3CC701264642B98581E1C679463FC2C06307B'));
dbms_lob.writeappend(v_lob,30,hextoraw('D662C8D1C8558364121931803BF3DFAD3BA96A9F9B1DADA6BB1E8BA5C367'));
dbms_lob.writeappend(v_lob,30,hextoraw('A8DA5B4169A6DEEA3AABDE1338F3596086C57E5528E063CE3C37CC191403'));
dbms_lob.writeappend(v_lob,30,hextoraw('9F5346C24D1E2935193534BC98246E6CA186401DA72C440656F9542150C6'));
dbms_lob.writeappend(v_lob,30,hextoraw('420F7E01AADA6788E182CDF4DBEFB7C9A7DC387B98EC365B9288BB52207C'));
dbms_lob.writeappend(v_lob,30,hextoraw('DCBC68493862031392B595A5EA16D05E3B5F426E74B9DA1924B551B67492'));
dbms_lob.writeappend(v_lob,30,hextoraw('DB7EC314DB8280C8ECAE194E7AF51569FBA9DBDE8B5EEF46AFD3FA5A19F2'));
dbms_lob.writeappend(v_lob,30,hextoraw('EB34EF66B469BBDF4BF5D36B25F89B58B5C5A5CC76EC1268D5A7B799CC82'));
dbms_lob.writeappend(v_lob,30,hextoraw('29D1B6BA2489B1CAB01F2E7E6C75AB5A7368E6F6E9F561702C2DD647115A'));
dbms_lob.writeappend(v_lob,30,hextoraw('9DF2160E1238E3DC46324E0166C0C7358775A959DC6A0B38B67D3EC85C2B'));
dbms_lob.writeappend(v_lob,30,hextoraw('456F032CF2C56EA49C07930ACE580CB376FA567C77AD15E34F85782646B7'));
dbms_lob.writeappend(v_lob,30,hextoraw('9EDE51BB7A34C92EE8D832EC954AF04E47B5269DDFBCA56B6CF7B3D6DF2D'));
dbms_lob.writeappend(v_lob,30,hextoraw('06ECE3B38B92975D537B5F7DBE66D5C4B05DC2F7496E6D648EE9E111098C'));
dbms_lob.writeappend(v_lob,30,hextoraw('A8F0127C993E60183000EFE48E463142DC4B8877B06F250A46A3A2AE0E46'));
dbms_lob.writeappend(v_lob,30,hextoraw('3B7A9A8350D5AC2E9D21D36C25B2854292B3CE259249368524B04555030D'));
dbms_lob.writeappend(v_lob,30,hextoraw('8519FBC4FB55281B3962C0172EEEED9385CE589E9C6DA249B6AE96EDE9D1'));
dbms_lob.writeappend(v_lob,30,hextoraw('3D6DF2D83A2D1AE9ABBBDADD0D896E63B7B590CCD1C6B1C724A412C4CAE8'));
dbms_lob.writeappend(v_lob,30,hextoraw('412A1B3D5B700307079AEBFE17E984FDA75B977B5CEB771B602E0652D10E'));
dbms_lob.writeappend(v_lob,30,hextoraw('FE3BE18E49E79502BC92E55B5DBF8B4A8098E39184931CEE11DBC3F29E3A'));
dbms_lob.writeappend(v_lob,30,hextoraw('8396C75E58FB57D2FE0BB3510C73A294B6B1822B5817B6E5882103D76A77'));
dbms_lob.writeappend(v_lob,30,hextoraw('EE5BDABA68C39E708ABBD54A5F2F857DFAFC8E0C6D4F6542A3764DC6D1F5'));
dbms_lob.writeappend(v_lob,30,hextoraw('7BFDFA1E82005000E8001F952D45E651BEBD7E53E5AE4B4543BE977D1CAC'));
dbms_lob.writeappend(v_lob,30,hextoraw('5725A2A1DF4BBE8E561725A2A2DD46EA2C1725A33516EA37516024CD19A8'));
dbms_lob.writeappend(v_lob,30,hextoraw('F752669D82E499A3351EEA3751601F9A335193499A76112668CD479A4CD1'));
dbms_lob.writeappend(v_lob,30,hextoraw('6024CD26EA8F34669D807E69334CCD26EA76024CD377533753734580909F'));
dbms_lob.writeappend(v_lob,30,hextoraw('7A4DD51934D34EC2252D499A8B3C526EA045DCD19E6A3CD2E6958B24DD4B'));
dbms_lob.writeappend(v_lob,30,hextoraw('9A8F34B9A56024CD19A8F34B9A56024CD19A8F34B9A2C0499A5CD459A5CD'));
dbms_lob.writeappend(v_lob,30,hextoraw('2B00FDD4B9A8F34668B0126452D479A5CD2B00FA2999A3345863E8A66697'));
dbms_lob.writeappend(v_lob,30,hextoraw('345807514DCD19A2C03A8A6EEA3751601D45377526EA2C03E8A8F7526EA2'));
dbms_lob.writeappend(v_lob,30,hextoraw('C0499AF973E28C12E8FE2A5D4E01B7CDDB7258E369570C8C38E73CC8A48E'));
dbms_lob.writeappend(v_lob,30,hextoraw('8197BD7D3A5EBC93E2F68E350F0E9D4543799A5C88D2EC5DCC6D669238E5'));
dbms_lob.writeappend(v_lob,30,hextoraw('CFFB31929311DFCBC679ACABD2E7A6F4BDB5B796CCEBC0D7F618984AED29'));
dbms_lob.writeappend(v_lob,30,hextoraw('7B8FD25B7DCEC711A76A714BB03A33A98D1A33C2EE2401B4ED0ABCA9C804'));
dbms_lob.writeappend(v_lob,30,hextoraw('1040F5E6B5A5D61FCC430C6D1AC719513659CBA052A3F763014B104672BC'));
dbms_lob.writeappend(v_lob,30,hextoraw('91CE060F89E87A93412358C8ACB35B890AB6EC6E45766319CB11942E7180'));
dbms_lob.writeappend(v_lob,30,hextoraw('3E5FF779EBC5E24F0BE0EC661DDB0CC40E368C65B23E626BE72A61F925D2'));
dbms_lob.writeappend(v_lob,30,hextoraw('CB67EA7D829A946F6E8F4DECFA976FF5292E6590310A01DA300AAEC24E4F'));
dbms_lob.writeappend(v_lob,30,hextoraw('2DD72C792D8E49AC196EE459E38D07EF9E113A73F2A8C9505B1F30DDD547'));
dbms_lob.writeappend(v_lob,30,hextoraw('FC0BA75491D7CE54998C7131DF2CA3B44ABB9B1B782D8E319CE6A95AB995'));
dbms_lob.writeappend(v_lob,30,hextoraw('E5B9758D55E479DBFBAA24002A93F78055DAAA0761E95B28D95ADEBE63BD'));
dbms_lob.writeappend(v_lob,30,hextoraw('BDE5BDF4F2B6ADDBBAE86944F2332232A920EEDDF7036DCA630C78009E0E'));
dbms_lob.writeappend(v_lob,30,hextoraw('3071C7351C93C636B29FDF00CDE5CB9F264000E15800C991CE198A9E8315'));
dbms_lob.writeappend(v_lob,30,hextoraw('52EAE92468A3C111C6428604E594E5989E40E7249C0FE554E791A7FDEA33'));
dbms_lob.writeappend(v_lob,30,hextoraw('1F2800B201C303C018E0FD7D6AD435DBD4C9CFBBD6E6847751AED694B333'));
dbms_lob.writeappend(v_lob,30,hextoraw('30931192840192541DA541E3B71CD48D76D3C72452A09130A3713F3AB762'));
dbms_lob.writeappend(v_lob,30,hextoraw('B9E7D720F5AC75B9054C6CCA1CAE46DC0CE49CEE20E013CF03DA9D15DAC5'));
dbms_lob.writeappend(v_lob,30,hextoraw('22A15215CE32DCE18719183C8273C1ED43D35B6ABFAD057BE8DE8FFAD49F'));
dbms_lob.writeappend(v_lob,30,hextoraw('EDB2D8CF244F23326D1F672F821803C64E4160064607E3525E3C57C91B86'));
dbms_lob.writeappend(v_lob,30,hextoraw('2B2A796C020014AB649C67D0AE464F5A8A7823D42392DFCC315CC4BE7C3B'));
dbms_lob.writeappend(v_lob,30,hextoraw('8021F031B14E7201EA38EA3A563D8BB885C364F95210719E03671DBD29A4'));
dbms_lob.writeappend(v_lob,30,hextoraw('9FBCB492D1AF5EA17927C92BB83D9DFB7437EDDCCD669346CEDB80C8524E'));
dbms_lob.writeappend(v_lob,30,hextoraw('08182D81C8FC466B32FA45478E52DBC640DE09C9DC338EB9E3D6A1D3AF36'));
dbms_lob.writeappend(v_lob,30,hextoraw('CD7767228F2E6959D5B8180FDB0001D47EB576EA3DD6ED004F91172A40C6'));
dbms_lob.writeappend(v_lob,30,hextoraw('48047239EC7AD0972C9A6BFF00D97B157728A6BA77EE88BCF655063E8DCF'));
dbms_lob.writeappend(v_lob,30,hextoraw('39E73DF3DF35A8F731DE4097132E66859629981CB140A42B1CF7CF5AE6EC'));
dbms_lob.writeappend(v_lob,30,hextoraw('EE580F25D0A9864643920B81D73D071822B4ECAE3CB79C850F1EC3F2939E'));
dbms_lob.writeappend(v_lob,30,hextoraw('7FDDCE4F15128D9BD355E7BA654657B767DFA1A70DCC119D9967873C824F'));
dbms_lob.writeappend(v_lob,30,hextoraw('418E40E80E2B46EAD16E194A4E85A41BE29B851267F81CFF007FA573C503'));
dbms_lob.writeappend(v_lob,30,hextoraw('C0D25B0F361CB170A32E80E31919C91C71C525BCD208BC94903444172B21'));
dbms_lob.writeappend(v_lob,30,hextoraw('0BF32FFB3B49CFE350E2EF74D76772F996CD6DDBCC9E747B69DE29188603'));
dbms_lob.writeappend(v_lob,30,hextoraw('240040C2FA679E7D6A349F0CADB5594A9C0627046080480413FD6A66BC70'));
dbms_lob.writeappend(v_lob,30,hextoraw('D159EA287C965CDB5C86DC541E5BA8C301C65491552EADBCB611B3874C06'));
dbms_lob.writeappend(v_lob,30,hextoraw('56E9E62F5520671822AEFF00276F556EEBFAD08FC56DDB5F324699F681F2'));
dbms_lob.writeappend(v_lob,30,hextoraw('9C7438EBEBD7DEA4567675EE58052324F6CF1EE2A92055047078C1E9DCF0'));
dbms_lob.writeappend(v_lob,30,hextoraw('722944EA484006E2FB571DC93803F2A5ABD3F41BD8BA588628A4E47CB9C8'));
dbms_lob.writeappend(v_lob,30,hextoraw('EE48C63DC9A9EEAED6DACE78CCFF00BE8C468CAAA3180C0EC073DBBE392D'));
dbms_lob.writeappend(v_lob,30,hextoraw('C5549664B147791A279F68181D62EBC771B8AFAF4C5674170F77702EA755'));
dbms_lob.writeappend(v_lob,30,hextoraw('581242D147DC9FE1279E9E95AA4F4B2EA4E9AB93B69A2EFF00D753B7F09E'));
dbms_lob.writeappend(v_lob,30,hextoraw('9CF14887699753D4CA4410E3E55760CB1AE391D32C7F1AFA8EC604D32C6D'));
dbms_lob.writeappend(v_lob,30,hextoraw('6C23C1F26251230FE3948CC8C7EAF93ED5E53E01D25F4F84EBB7CBB6E2EE'));
dbms_lob.writeappend(v_lob,30,hextoraw('1315A42C30D1C2E43798C49CEE703818185FAD7A08BCC9E7BFBFD6BD6C1D'));
dbms_lob.writeappend(v_lob,30,hextoraw('0718B9CB791F3199E2956A9ECE0EF0A7D7BCBFE01BE25E9CD3BCCAC3FB48'));
dbms_lob.writeappend(v_lob,30,hextoraw('E39EFDAA417073EA7AFA576D8F2EE6C79BFE14A24AC9139EE31F8D3C4DFE'));
dbms_lob.writeappend(v_lob,30,hextoraw('734585734FCC14BBEB384C29DE68C7AD2B05CD0DF4BBFDEB3C4B9A5F3451'));
dbms_lob.writeappend(v_lob,30,hextoraw('6197B7D2EFAA424A0494582E5DDF46FAA5E67E94EF3051602DEFA37554F3'));
dbms_lob.writeappend(v_lob,30,hextoraw('281251602D6EA5DD55B7D1BE8B01677521355F78A37D16113EEA4DD50EEC'));
dbms_lob.writeappend(v_lob,30,hextoraw('F7A377D280252C3BD266A227349BB14C2E4B9A4DD51EEA66EC7BD16026CD'));
dbms_lob.writeappend(v_lob,30,hextoraw('349A8B7526FA2C225CD21350EEA4DD4EC068EE14B9AAFBB14BBAA6C55C9F'));
dbms_lob.writeappend(v_lob,30,hextoraw('752E6A1CD1BBB63F2A009F752E6A00D4BBA8B01366977543BA97752B012E'));
dbms_lob.writeappend(v_lob,30,hextoraw('68CD459F7A3340C9B751BAA2DD46EA2C04D9A3350EEA5DD4AC04B9A5CD43'));
dbms_lob.writeappend(v_lob,30,hextoraw('BA8DD458097752E6A1DD46EA76026DD46EAAE5B3485F34AC058DD485B1F4'));
dbms_lob.writeappend(v_lob,30,hextoraw('AAFBE9BBE9D80B3BFDE8DFEF554C98A8FCEE7DE8B016CC87DBF1A6992A99'));
dbms_lob.writeappend(v_lob,30,hextoraw('9071D38A8DA5EB834EC05B32FBD52BC48AEEDAE2D6750F0DC44F0BA9E415'));
dbms_lob.writeappend(v_lob,30,hextoraw('7041041F6A89E618EBEDC55492E3AE4F5F5A7CB7D18AE7C71E2ED0EFBC37'));
dbms_lob.writeappend(v_lob,30,hextoraw('ACCB6CBE7892D24F36C6750419EC864AB06C60CB02E11B03EE0CE30398B4'));
dbms_lob.writeappend(v_lob,30,hextoraw('FD685D44082B1CD100B2C60BFCCC303CC552C4ED20E78E1718AFA17C79E1'));
dbms_lob.writeappend(v_lob,30,hextoraw('F5F12E9ABE44820D46C66FB55A4C172772AB650F39DAC0F38F4079AF932F'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0B8B3B8B8BAB756B6BBB3B8717B6D8DAD0C81B648C8380D0BB13C01F28E'));
dbms_lob.writeappend(v_lob,30,hextoraw('0E4735E6E230DBF4B6A9FF0099F4181C75E294DDE4BE2F35D19E837134D7'));
dbms_lob.writeappend(v_lob,30,hextoraw('70CA12768A6F2D137B1C8288C876316CFCA428031DAA3F366110867410B8'));
dbms_lob.writeappend(v_lob,30,hextoraw('C156C1111070490C0907710483919ED5C9E9FADC777FBB1886E8007CB639'));
dbms_lob.writeappend(v_lob,30,hextoraw('4908E0EC6E09FF007704FA135D01BF91A3585DD7C80FB826C2C171C0C120'));
dbms_lob.writeappend(v_lob,30,hextoraw('1C1FEEE7AF35C0E128BB34AF7BFF00C33EA7ADCF1A8AF195D5ADE5F73D89'));
dbms_lob.writeappend(v_lob,30,hextoraw('DD5B016460C3FBBC85C60B6739CE33F89A92495A51BD3CB57DFB4C418AA6'));
dbms_lob.writeappend(v_lob,30,hextoraw('C51F2B227380403903273CF7A7691A45E6B37B1D969B716D0A476F757177'));
dbms_lob.writeappend(v_lob,30,hextoraw('35FCDB6DA38205333CC5F68789238B86CEFE7B7359537DA6248E4B8B49AC'));
dbms_lob.writeappend(v_lob,30,hextoraw('F32CD007725A3796355322C5285D8C4248A49EA030E051BE9A3BADBFE07C'));
dbms_lob.writeappend(v_lob,30,hextoraw('88775BDFD7CBFAEE2B39DE4B47CA92030EA4B1E381CFE1F9D11C8BB595E5'));
dbms_lob.writeappend(v_lob,30,hextoraw('5E0F2490197B803B927D07A7355BCE28A0ED03721071D3DD7A03CAFE3F5A'));
dbms_lob.writeappend(v_lob,30,hextoraw('AE1D263B88D9BC1F948E847A7E1ED4F97417359EFBEFE86DDA5EB79915BC'));
dbms_lob.writeappend(v_lob,30,hextoraw('CCB1FCDBA0B85C92AD9E118E480AC40C83D0D509AE5A1BCBB0AA0976DD82'));
dbms_lob.writeappend(v_lob,30,hextoraw('08507181E9FE155999A31FBA180067009E7A138E319EFED51DEEAA2EA5B7'));
dbms_lob.writeappend(v_lob,30,hextoraw('B8685958C222940E8ED0E0039DBC1C60D28C75768DD35F8EFB79FA8E5515'));
dbms_lob.writeappend(v_lob,30,hextoraw('BE2B34FB747A7E048B36DB8731FDE27796E0800AA83C76191FAD74715F89'));
dbms_lob.writeappend(v_lob,30,hextoraw('232C42807E42A7A81FCF9AE1E3924324D2A7C8A54023B13EE71CE78AD049'));
dbms_lob.writeappend(v_lob,30,hextoraw('C432A856005C80E013F74F71EFED553A7F7A5F86EC54EB5BD1BFC5BD0BF3'));
dbms_lob.writeappend(v_lob,30,hextoraw('C822BA9E5419DF1A1C67BE586475E718A9ECE68A19F3938C296C91F78F5E'));
dbms_lob.writeappend(v_lob,30,hextoraw('47D7F1AC892479243238D807CA00DC324719C7EB4FF30ED1F229DA70587F'));
dbms_lob.writeappend(v_lob,30,hextoraw('939A1C6EACFAAD7CC39DDDB5EABCB537DD9ED6E45C5949B55FE668C9186E'));
dbms_lob.writeappend(v_lob,30,hextoraw('7D323A512FDAD984DA6A2C8E06F9605524EDE85940F9F00D62979248D829'));
dbms_lob.writeappend(v_lob,30,hextoraw('C3C2DB80519CAB7DEC9E076A5B6B9961956584CE93A9F976F4C753CF423D'));
dbms_lob.writeappend(v_lob,30,hextoraw('722B3E576BDD36B477EBDAFF00E669ED2EF97549F6DD7A7F917E0BB3751C'));
dbms_lob.writeappend(v_lob,30,hextoraw('96978009118AA86F97072791939CF6AD4D2A07BA56B3BA127936E1E68A75'));
dbms_lob.writeappend(v_lob,30,hextoraw('8D9DA0C7F7CE0FEECF39F7C7354E5BDB29D85D5DC03ED9D0FD9D942BB000'));
dbms_lob.writeappend(v_lob,30,hextoraw('EE75DBC1FD7DAA4B63A86A2CF02C8D043700B952EB1978E142FB72C50615'));
dbms_lob.writeappend(v_lob,30,hextoraw('4672C40E32454B4E5F0AE44DDF577B3EBCBDF4348E8EF27CEDAE9D56E9C8'));
dbms_lob.writeappend(v_lob,30,hextoraw('80B3CAED1DBC6CDCE72A3E4CF4CB3740314D9AE60D323244A92DD3AFCE41'));
dbms_lob.writeappend(v_lob,30,hextoraw('0769EB8503EEFA13D48E959771E278ED6DA7B2B1B6884536D5370E59E4F9'));
dbms_lob.writeappend(v_lob,30,hextoraw('73931F000CF7620FB0EF5CABDCBDC4A24624B6738CF3CF3927A924D6F1A3'));
dbms_lob.writeappend(v_lob,30,hextoraw('2968D5976EBF37FA18CEB421ADEEFEE5F23764BB9AE6432CED8859BF7712'));
dbms_lob.writeappend(v_lob,30,hextoraw('0DB939E491C9C57A8F81BC34D7D2C5ABEAD1B47A7404490C4E36FDA9F1F2'));
dbms_lob.writeappend(v_lob,30,hextoraw('6030E61070723EF63D2B96F0B785CDF18F51D5B74365195314057E7B8C64'));
dbms_lob.writeappend(v_lob,30,hextoraw('E4F20A20E3B1CD7B2ADF0DA91A0548A2458E38D38088A30AA00EC0015E85'));
dbms_lob.writeappend(v_lob,30,hextoraw('0C3276949597E76D2CBF53C6C663A4DCA9D39795D745E4763F6E2EC395C0'));
dbms_lob.writeappend(v_lob,30,hextoraw('18500F0001C003B5585BA1EB8FF39FE75C9457209F4FC7F1AB8973DB273F'));
dbms_lob.writeappend(v_lob,30,hextoraw('E7BD7A078CFF0013A95BA1FDE181EFFF00D7F5A956EBDF23AFE7EF5CCADD'));
dbms_lob.writeappend(v_lob,30,hextoraw('0CF278C77353ADD741914C968E952E7DFF0033C54C2E8119CFF9FCEB985B'));
dbms_lob.writeappend(v_lob,30,hextoraw('924F6E39EBD7A54EB719EE7DE80B1D28B8F7A78B8FD6B9D17207FF00AEA6'));
dbms_lob.writeappend(v_lob,30,hextoraw('173F9F5E690ADE46F098F1D31EF4F597DFFAD61ADCF1FE1532DC6476EBD3'));
dbms_lob.writeappend(v_lob,30,hextoraw('34580DA12FE74E130E3902B205C5384D9EF4580D7F3BE86944B594253D33'));
dbms_lob.writeappend(v_lob,30,hextoraw('CF5A904D4AC069093DC52EFF004C56779A33DCFAF34F1303C5005E129FFF'));
dbms_lob.writeappend(v_lob,30,hextoraw('005538499AA1BE9DE60C7345845EF33DC51BC7AD52F3052EFA065D120C51'));
dbms_lob.writeappend(v_lob,30,hextoraw('BC7AD52DE7AFA52EFC5022E6FA37FBD54F33B51BFDE802D6FA37D56DDEF4'));
dbms_lob.writeappend(v_lob,30,hextoraw('6EE6981637D26EA8375377D022C16A6EEA8370A4DDC5006986F7A5DD5583'));
dbms_lob.writeappend(v_lob,30,hextoraw('F7A5DF4AC5167751BAAB6FF7C538B516027CFEB4BBBEB506EA3751602C6E'));
dbms_lob.writeappend(v_lob,30,hextoraw('FF003FE79A5DDE87F3355B752EEFA7F9FD6958658DD4BBAAB86146EA2C05'));
dbms_lob.writeappend(v_lob,30,hextoraw('9DD46EAAFBBF2FC693751611637FF934BBBEB558BD37CCF5A2C32D6FFAD0'));
dbms_lob.writeappend(v_lob,30,hextoraw('5C555DFDF8A6993E94580B7BC7AD377FBD54320F5A679A33D79A761170C9'));
dbms_lob.writeappend(v_lob,30,hextoraw('F8D26FE3AFE5548CA075CD33CD23BF6EF45865DF371DFBD30CB8F4AA5E6F'));
dbms_lob.writeappend(v_lob,30,hextoraw('0726A279703AF39CFE14580BFE767D7BFF009EB8A8CCC3DFAD6734C3B1C7'));
dbms_lob.writeappend(v_lob,30,hextoraw('B5577B8009F98F273DFDB8F4A7611A6D37F9E2AB3DC75E7FCE6B31EEB1D1'));
dbms_lob.writeappend(v_lob,30,hextoraw('81EFF375FD381549EEB23AEDE7D7DBD476A2C3359EE3DCE471FD6B3A5B8E'));
dbms_lob.writeappend(v_lob,30,hextoraw('BC9F7C7F81EF59F25CF5F9AB3E5BA61BB0C3F5F6A63B16EE2EC8F5C67DB3'));
dbms_lob.writeappend(v_lob,30,hextoraw('DEBC9FC6BE1A5D533AB699B60D5603BB38DA265FE257DA0E49524027D706'));
dbms_lob.writeappend(v_lob,30,hextoraw('BB99EE73C649E7B7E3DBAD644F71D72DD7DBF4EB5324A4ACCA839424A51D'));
dbms_lob.writeappend(v_lob,30,hextoraw('D1F315FD8F9B349108FEC1A8C6CC25B77FDDC4EDFC4D11FE124E38381F4A'));
dbms_lob.writeappend(v_lob,30,hextoraw('8ED75DB8B67306A092388D7CB063502752BC0CE4AAB03EA4FB835ED3E22D'));
dbms_lob.writeappend(v_lob,30,hextoraw('1AC3598B2EA915DA9CA5C46A15F201C02CBC915E39AAE997B625A3BFB7F3'));
dbms_lob.writeappend(v_lob,30,hextoraw('EDD5884B95C39C038524AE587E35C5528746935FD6CFA1EA50C54BA37097'));
dbms_lob.writeappend(v_lob,30,hextoraw('5ECFD7B9B76D7CAE82E2DA667031B2485F12A1E41561C30EE0E78ABD73AB'));
dbms_lob.writeappend(v_lob,30,hextoraw('5C5E69B0E9F24A2486D5A448720931F9B70D752055C6DF9E63976C963851'));
dbms_lob.writeappend(v_lob,30,hextoraw('8C0C5797B43344C25B4B96CAF4DAE51C74E8C083FF00EAA9E1D6AFEDDB6D'));
dbms_lob.writeappend(v_lob,30,hextoraw('C0332F3B8C99127D44ABC9E7D73D2B96586D6E9A6D3BA4F469A3BE38CD1C'));
dbms_lob.writeappend(v_lob,30,hextoraw('649C53566D6B1B3DCEC8493C4BF295C005B6E77678190D9C1E9E80D39750'));
dbms_lob.writeappend(v_lob,30,hextoraw('81C067530B74E395E07E8335896FAE58CC079F2496EC073E6C6D2A75E9BE'));
dbms_lob.writeappend(v_lob,30,hextoraw('204FE69C55F37565328905CD99560C399046C48E3EEC8109C7D2A5C1ABB9'));
dbms_lob.writeappend(v_lob,30,hextoraw('425EABFCF66546517F0558E9AA4DFF004D1796F817088CAC245186C8F5E9'));
dbms_lob.writeappend(v_lob,30,hextoraw('83D38E9514F34EE0C26D8C6C24DD9232DF37190476C54090DB3B029B1995'));
dbms_lob.writeappend(v_lob,30,hextoraw('4731BC4C327D831FFEB53D6D65208135C82BE92678EB81F3118A8BC13BE8'));
dbms_lob.writeappend(v_lob,30,hextoraw('BD7FE0791ADAA496B76BCADB7CC7C28E1999F7F18EBD3214727B66A63E5C'));
dbms_lob.writeappend(v_lob,30,hextoraw('F0A9046FB697EF1200C60E33CE0E0D30D834C15B74CC080581B808BCF18C'));
dbms_lob.writeappend(v_lob,30,hextoraw('33A8CFAF149F66B78B3BC5842BCEE373790039FA1909269732BDD3D7CADF'));
dbms_lob.writeappend(v_lob,30,hextoraw('35B8284ECD725A3DDDFE4F6E83D753813725CC832BC640CF4F4ED4C5BD32'));
dbms_lob.writeappend(v_lob,30,hextoraw('0516D0CAEB8CE480A8411D7764D466EB4687292DF59073D0DA4325CA8E73'));
dbms_lob.writeappend(v_lob,30,hextoraw('F79232A4FE354E4D7F4B8005B78AE6F36F03CE22DE33EF84C923D881D6A9'));
dbms_lob.writeappend(v_lob,30,hextoraw('42FB539DDF7D17E36FCC995451F8EB53567D1A72FB95DFE069C577319F68'));
dbms_lob.writeappend(v_lob,30,hextoraw('009381B21567E9D412319F7AD794A8FDF5FCF6D631E7912362423B058973'));
dbms_lob.writeappend(v_lob,30,hextoraw('DBB938F5AF3F97C437EE0ADB88AC97B0B141037BE6507CC3FF007D56519A'));
dbms_lob.writeappend(v_lob,30,hextoraw('4762D23B3B6492598B1E7A9C939EBD6ADD0BB4FE1B2E9AB7F7EDF899C717'));
dbms_lob.writeappend(v_lob,30,hextoraw('18C5A5CD535FB5EEC57977FC8EF67F10E9F684AE9D14F34D9CFDA270985C'));
dbms_lob.writeappend(v_lob,30,hextoraw('1E8A092A01F5E7E95857DAD5DDF7FC7C4B98958B2C4A008D4F4C9EECD8EE'));
dbms_lob.writeappend(v_lob,30,hextoraw('735CFAF99210B1A3364E3FCE2B72CB469A521AEB31478079E58F4C00BC9E'));
dbms_lob.writeappend(v_lob,30,hextoraw('7DEB485149AB2D6FBEEFEFFF00231A98B93BA72B2ECB45E96EA55B74B8BD'));
dbms_lob.writeappend(v_lob,30,hextoraw('90470A348EDC01D7FA600AF4DF0F6856DA6B25D5F797737414148BAC71B7'));
dbms_lob.writeappend(v_lob,30,hextoraw('072DBBEF30C63D2A95947059A94B68C47C0DCC146F6C7AB7DEFC2B621624'));
dbms_lob.writeappend(v_lob,30,hextoraw('8C927BF1FA9EBEB5D50A696AFEE382A5794F44DDBBF53B28EFDA439DDD38'));
dbms_lob.writeappend(v_lob,30,hextoraw('C0E00F61ED5A10DD1CF53D3F2F53D6B9385C819071DCFE5E95AB14846DEF'));
dbms_lob.writeappend(v_lob,30,hextoraw('C74E9DABA13395ABFF0048EA23B9C63278EDFE735752E7032323D3F1AE6A'));
dbms_lob.writeappend(v_lob,30,hextoraw('39881DBA74EBEF56D265F5E9C639FF00F5D3B90D7A9D02DD1C0049CF5AB4'));
dbms_lob.writeappend(v_lob,30,hextoraw('2E38CF3D3FCE2B9C598763EF81F9F43F4AB2B373D7F2EB45C968E816E303'));
dbms_lob.writeappend(v_lob,30,hextoraw('AF1FE7BD4EB718C76EDFFEBAE7966CF73F4FF1A9967C707E9C9EDEC29DC2'));
dbms_lob.writeappend(v_lob,30,hextoraw('C740B719FE2F6A996E338E4E2B9F5B81C73FE7E95389C71C8E9DFF009F14'));
dbms_lob.writeappend(v_lob,30,hextoraw('5C2C740B7191D7FC8A916E31DF3CFAF1580B73C919CE3F2A945C0CF5E7D6'));
dbms_lob.writeappend(v_lob,30,hextoraw('9DC563A04B8CF7FF00EB558171EFFAD738B3707E6C73EFFE353ADC74E68B'));
dbms_lob.writeappend(v_lob,30,hextoraw('8ADF33A213F07AFE1DEA459B3D722B016E3DC7E39A9D67F7A02C6E0B8006'));
dbms_lob.writeappend(v_lob,30,hextoraw('09A9166C8E0E6B19661CE483C548B28CF5E3FAD02360CA3FFD54E1275C9A'));
dbms_lob.writeappend(v_lob,30,hextoraw('CBF3863EF7F3A7ACDEA79A0563543D2F983DEB344B8EFF00CE9FE66475FF'));
dbms_lob.writeappend(v_lob,30,hextoraw('003ED401A3E6FF00851E6D67893DCD49BF23AFF4A02C5CF333ED4FDF5477'));
dbms_lob.writeappend(v_lob,30,hextoraw('8CF5F7A51203DFA53158B9BCE7AFB52EF38AA7BFDE943FBD0162E07F7A37'));
dbms_lob.writeappend(v_lob,30,hextoraw('FE955038F5C51E66781408B391CD1BAABEF269BBF8EB406C6AEE1EF4BBFD'));
dbms_lob.writeappend(v_lob,30,hextoraw('EAAEE1EE682DE871F4A2C32DEEEFC8A037AE722AAEF38EE7B75FF22943FB'));
dbms_lob.writeappend(v_lob,30,hextoraw('9EFF00AD1602DEEEFD3EB4BBBDEAA87FA8FA74A037B9CFF9CD202DEE1EB4'));
dbms_lob.writeappend(v_lob,30,hextoraw('6EAA9B8F4EBD7A5297FCFA7345865A0FEF46F1EB5577FE3FE7F3A69707BD'));
dbms_lob.writeappend(v_lob,30,hextoraw('005BF3293CC1C8AA9BC77FD699B86074E3A7F2C51602EEFF00A8FAFE34C3'));
dbms_lob.writeappend(v_lob,30,hextoraw('275E4D51DC739C90076E0E7F1EA28F331C13D3D4FE74580B8653CFF414DF'));
dbms_lob.writeappend(v_lob,30,hextoraw('37FCF1553CDFF23FFAD51197DFFCFF003A00BAD2678FC29A641D6A834AB9'));
dbms_lob.writeappend(v_lob,30,hextoraw('EA79E7BD33CEC77C7F2A63B174CA738E2A3794038CF1D7BFFF00AAA834DD'));
dbms_lob.writeappend(v_lob,30,hextoraw('4E4FF9FAE2ABBDC7079EBC606680469B4FD79C7D39F4AAED3FA1E33DCF3D'));
dbms_lob.writeappend(v_lob,30,hextoraw('FDEB35AE075047B107FC3FAD547B8F4C9FE9EBD39A00D47B8C77FE7FE7AD'));
dbms_lob.writeappend(v_lob,30,hextoraw('5392E0F3839FAF4C5663DCE33F31F5EF9FAF4C55392E3AF3DFBE7AD0348D'));
dbms_lob.writeappend(v_lob,30,hextoraw('292E7D49E7B71DF1CE735524B8E38EFF00E7D6B31EE09EFCFB13EDEB54DE'));
dbms_lob.writeappend(v_lob,30,hextoraw('E0E396C7F5FAFE34AE558D27B924609391EFCF1939AA52DD7DEF9B9F4CE6'));
dbms_lob.writeappend(v_lob,30,hextoraw('A83DC1E724119E3B1EDEDEDC551966073F3118C7193DBF0A571A45A9AE47'));
dbms_lob.writeappend(v_lob,30,hextoraw('F7BDB8CF5ED58F7171DB7118E78E38FD453259B8FC7F4FF0359B2CA707A6'));
dbms_lob.writeappend(v_lob,30,hextoraw('3B73CF352D969115C4E5B201E33EBFA7F9CD615D32C88F1CAAAE846D21C6'));
dbms_lob.writeappend(v_lob,30,hextoraw('7F9FBD5E998907BF4FEB5952AB738E9D463FCFA5272EF62D24CE3750D020'));
dbms_lob.writeappend(v_lob,30,hextoraw('7264B27F21CB13B093E5F7E38C91CFD6B94BAB1BCB6C89620EA3F893E643'));
dbms_lob.writeappend(v_lob,30,hextoraw('F5047AFEB5E93229C9CFD49FCFA552917A820107B71DB07A56524BB1A294'));
dbms_lob.writeappend(v_lob,30,hextoraw('E3D6E8F31658F3CA321F6E3A9C7E75118FA6D90E31DC1E9F811F8D7A0CD6'));
dbms_lob.writeappend(v_lob,30,hextoraw('56B2677C09E9C2807F3EB59B268D68C7E5DC9F4F43F91A8E5B5ECDFE657B'));
dbms_lob.writeappend(v_lob,30,hextoraw('4EE97E471FB5C631201D31F31F7F634A1EE063F7A7073C076F4E3D2BA56D'));
dbms_lob.writeappend(v_lob,30,hextoraw('0D3F8653EC0E7DBD3350FF0061B64E255E38E7208F6A5663534B557F3D4C'));
dbms_lob.writeappend(v_lob,30,hextoraw('2DD31C665CE3B6E6F6A4018E49933CE7939FE7ED5BE344F5997039E87E9E'));
dbms_lob.writeappend(v_lob,30,hextoraw('953268D10EB29FC17FC727BD3B30E78E976FEF39C19EBC9FD3FF00AF4A14'));
dbms_lob.writeappend(v_lob,30,hextoraw('9E15777618E7DEBAC4D2ECD3EF02FF005C55B4B7B58FEE431EEFF741FE74'));
dbms_lob.writeappend(v_lob,30,hextoraw('B95873A5B27B7E7EA729058DCCFC08D88F5EC3FA56B41A2104199D07B2E5'));
dbms_lob.writeappend(v_lob,30,hextoraw('8FE640FE75BCA7D0631E9C0FD054C80B633FE7154A2BD49736F6FEBE657B'));
dbms_lob.writeappend(v_lob,30,hextoraw('7B4820C7971AEEFEF360B7F87E55A68849F5A238C7A0F4FD3F3ABB1C78ED'));
dbms_lob.writeappend(v_lob,30,hextoraw('9C0EFEF83FE7915497621B6F7DC7C31E7D88207F9E2B522503071DB1CD57'));
dbms_lob.writeappend(v_lob,30,hextoraw('8D703DC7F9EF57631F419F4F5AB4896CB917183DB1FE3F855F46200C6074'));
dbms_lob.writeappend(v_lob,30,hextoraw('F5FF003DEB394FA373FE78FAD5A56C72491C11FE4D52D88FC0D14908E3AF'));
dbms_lob.writeappend(v_lob,30,hextoraw('E1EF53A499EC077CFF002ACF46E73BB39E79E47FF5AA70CA3D3FCFA0C530'));
dbms_lob.writeappend(v_lob,30,hextoraw('B1A29211D793FE78A78B80ADC9C91FCBD0E2A806E9E9EC714E0FCE0E0E7F'));
dbms_lob.writeappend(v_lob,30,hextoraw('1FCE9058D559C71824F5FF001A984DF5E7D3FCE6B2558FB73DC71D7D3E95'));
dbms_lob.writeappend(v_lob,30,hextoraw('207E0751EE0FF93D281DBF33544C7A64E7F9FE1DAA559F9C139EA7EB594B'));
dbms_lob.writeappend(v_lob,30,hextoraw('28CE327F1E99A7F99919279C7A9A2FA2158D859C03FCBF2C773532DC0E84'));
dbms_lob.writeappend(v_lob,30,hextoraw('D622C87D791D7BD3FCF24FF9FF003DE9DC4D1BAB3E4F7C0E2AC2DC01EBFE'));
dbms_lob.writeappend(v_lob,30,hextoraw('73DAB01251D33D78E7BFBD4EB37BFB77C7F2A2E2B58DD4B8FA67BD5A5B81'));
dbms_lob.writeappend(v_lob,30,hextoraw('9C66B9D1301DF1CE473F9D5859F3820E3EBFFD634EE4DBF03A059FA107F3'));
dbms_lob.writeappend(v_lob,30,hextoraw('F6FC6A649B3DF15CFA4FCE33FE7F955A13E067391F5FE54EE163744CBC13'));
dbms_lob.writeappend(v_lob,30,hextoraw('CE2A5137F2F5F7AC349F279EE3BFF33DEA7128E80F27FCFF009E68B89A36'));
dbms_lob.writeappend(v_lob,30,hextoraw('96627BF1EB8A944A7F4AC64978183EDFE4E31532CC7904FF009C0A64D8D5'));
dbms_lob.writeappend(v_lob,30,hextoraw('127BD3BCDC11FD3E83FCF359EAFC7269E24CF03345C0BC1C93D7AFA54AB2'));
dbms_lob.writeappend(v_lob,30,hextoraw('7D6A807A50F93D69FCC468EF3EB416F7E6A8EFF7A7092802E6FCF14E0D8C'));
dbms_lob.writeappend(v_lob,30,hextoraw('5521273CD3B7FF009347908B7BCD287E39C9FA554F347AFE1D7F1A04AB8E'));
dbms_lob.writeappend(v_lob,30,hextoraw('BFE7F9D303577FBE7F2A5DE3F4AADBBFCF4FD294B9E3FAE68116449EFDA9'));
dbms_lob.writeappend(v_lob,30,hextoraw('4483D715577E3BFE38FF0026977104E4FE79A00B5BCFA9A76EFAFE355038'));
dbms_lob.writeappend(v_lob,30,hextoraw('F5FF001A6971D8FF009FCE8B0CB9E611CF27E9CD344BC9E4F63EDF8554DF'));
dbms_lob.writeappend(v_lob,30,hextoraw('D79E3FAFE149E67A92793CE7DFFA521970C9DF3FE7F0A6993E86A919093C'));
dbms_lob.writeappend(v_lob,30,hextoraw('1C751F8FE7419074CFE64D3B0168C9FAFAFF00F5A9864FAD54328F61F5E3'));
dbms_lob.writeappend(v_lob,30,hextoraw('EBD4FF003A89A520FDECE39C67B7E7480B8643C739EDFF00D7EB485C7F78'));
dbms_lob.writeappend(v_lob,30,hextoraw('8238F6FF001AA2D2F07F2E738EF51B4C01F5CFBF7ED8079FC29817FCDE31'));
dbms_lob.writeappend(v_lob,30,hextoraw('FCFA544D3738CFE3E9FE7DEA8998F7207D7B7F9FC6A1328393B81CFF009E'));
dbms_lob.writeappend(v_lob,30,hextoraw('E290CBC66F4C9F7FA1FAD4266C73D7E9E871D39AA2D28E79E327A71F8F4A'));
dbms_lob.writeappend(v_lob,30,hextoraw('ACF38FEF7E592281D8D069C6719CFF002FE754DEE3927B74E3B74E2A93CF'));
dbms_lob.writeappend(v_lob,30,hextoraw('9EFD0F5E6AA3CFC9E4D2B8D22FBDC03DCFD78CFEA6A9BDC1C7A823D718F4'));
dbms_lob.writeappend(v_lob,30,hextoraw('E2A8BCDFED303D3AFF009EF555A6F46209E79C7F414AE3B179A7E7F8BF4F'));
dbms_lob.writeappend(v_lob,30,hextoraw('E84D5779BD370EA3B76F6AA0F31C6793DF93FE3555E619C83B7BE707191C'));
dbms_lob.writeappend(v_lob,30,hextoraw('FBD2B8ECCBCF373D7AFA9FA77FFF005D5379BA9E71DF278F7AA8F3161F2B'));
dbms_lob.writeappend(v_lob,30,hextoraw('1C9E73CF3E8075EF559A552739E4E491CFA8FAD26CB48B4F3904637119E9'));
dbms_lob.writeappend(v_lob,30,hextoraw('C74E7FCF7AA724DCF6EDD49FEA7FFAD5034A0F19271D073E9FE7AD567727'));
dbms_lob.writeappend(v_lob,30,hextoraw('B903A1FE7F4A4DF62ADFD7CC959C1CE7A67D38AA2EDCB77CD3989F7CE7E9'));
dbms_lob.writeappend(v_lob,30,hextoraw('FCEA0739EBFCFF000EE6A58D7E25790FB938FC7F95537C9F7E33FE7FFD55'));
dbms_lob.writeappend(v_lob,30,hextoraw('69FA9F5C773FD2AB3E0F7C73E87BF4EBEB48A5F229489938C633D3FC7F2A'));
dbms_lob.writeappend(v_lob,30,hextoraw('A72443D0F1F9FA64568B8FAFA71F8F6E6A0751CF6FF3F8D2D0A325E23FAF'));
dbms_lob.writeappend(v_lob,30,hextoraw('F4FF001AAAD19F4E9FAFF3AD7741EBDBA75FA7E42AB3276C0FFEB678A56F'));
dbms_lob.writeappend(v_lob,30,hextoraw('98BC9994C8DF4C8F7A84AB0FFEB75AD568F3DBF2FAE6A030E7FC8FC2977F'));
dbms_lob.writeappend(v_lob,30,hextoraw('20FC0CEE47B71DC51926AE7919C641E3FA7FF5E9C2DB1D47F93408A233FC'));
dbms_lob.writeappend(v_lob,30,hextoraw('CFFF005AA5504E382715716DFDBF2C7E7CD4CB0638C73CFA639A3A88A888'));
dbms_lob.writeappend(v_lob,30,hextoraw('4FFF005AADA29FAFF9FA54E9063A0E7DBFC6AD245EA3AFF3AAB7905C8635'));
dbms_lob.writeappend(v_lob,30,hextoraw('C75FD79FE42AF46318EBD3D3EB42C43A7F33C558543C71FAFE5DE9A1587A'));
dbms_lob.writeappend(v_lob,30,hextoraw('2919CE07F9FCF9AB4A0FB7E79E2A25079E9FD7F3A9D463B1C91F87B7534E'));
dbms_lob.writeappend(v_lob,30,hextoraw('E2FEBFA64E99E9E9E95383F99F5E86AB2D4CAC33C039CFD29DC56FD0B2AD'));
dbms_lob.writeappend(v_lob,30,hextoraw('918207F9EFC7D2A5FC463A75E3FF00AF55D48CF3C77FF1E9DA9E1BDCFA71'));
dbms_lob.writeappend(v_lob,30,hextoraw('4F61DBF12C64F4DDC7FF005BDF8A9370C7DE3FE7F0F4AABE66DC771CFF00'));
dbms_lob.writeappend(v_lob,30,hextoraw('9F5C53B7A9E83D0FB7AD2BFCC0B41B1CE73F8D4824FAFE3FD7FAD530F9E8'));
dbms_lob.writeappend(v_lob,30,hextoraw('723AF1DFA74A78639E00E39E9F87D3A53F5EA05B0E0E7914EF338EE47AFF'));
dbms_lob.writeappend(v_lob,30,hextoraw('00FAAAA07CF4E7F5E9D7B53812476F4A3D40B3E6E0FF00FABD7AD48241DC'));
dbms_lob.writeappend(v_lob,30,hextoraw('F707D3B75AA791EBD31FE7F2A70231CFF9FD680B22F2C8A79EBFFEBFAE3E'));
dbms_lob.writeappend(v_lob,30,hextoraw('9530947AF7EFEDED59BBC741F5E681267D3278E7F9FAD1EA2B1ACB283FE7'));
dbms_lob.writeappend(v_lob,30,hextoraw('EA71D7FA54EB28C000F18AC65988EFC83FE7B9A91262064E723D3147F9E8'));
dbms_lob.writeappend(v_lob,30,hextoraw('2B1B6B2FE1C559597DFF002AC359FA1248FD78A9D6519E1BB74E7FAFBD1A'));
dbms_lob.writeappend(v_lob,30,hextoraw('936F237566000FEBFE7F4A984A73C1EFDAB1127F7C9FF3DBEB56566F7FD7'));
dbms_lob.writeappend(v_lob,30,hextoraw('B50163692423A9C7E5F855859475CD622CC7D739153ACDCE29DC9B6E6C89'));
dbms_lob.writeappend(v_lob,30,hextoraw('81E391FE7F2A9925E958CB2FBFEB56126E9CFE7557158D41293DFDBF4A94'));
dbms_lob.writeappend(v_lob,30,hextoraw('3F1C1E6B34483D7AFA54A24F43D7FCF5A2E2B178487DEA4121FF00F5D510'));
dbms_lob.writeappend(v_lob,30,hextoraw('FDF26A40FCFF008D3B88BA1F3DE8DE3A66AA6FF7A5DE3FCFF9F5A77158B5'));
dbms_lob.writeappend(v_lob,30,hextoraw('9E99E94F561F95550FC7AFF9E69DBF3DF8A05B1AC1CF7FAD3B7FAF6FE755'));
dbms_lob.writeappend(v_lob,30,hextoraw('37E33F9FF9E68F301F6C7BD508B5BFDFA52F99EFFAD53DFF008FD7F952EF'));
dbms_lob.writeappend(v_lob,30,hextoraw('1D73DFB7F8500592FDF8E7D4FE7407279E9DBAD532FF00ED1C75FF003834'));
dbms_lob.writeappend(v_lob,30,hextoraw('DF339FE2CFFF005BEB4865C2E47519FC69A642077E3DF39FD2AA34A7F9FF'));
dbms_lob.writeappend(v_lob,30,hextoraw('009ED4D2FEFF0037B7F9140CB5E613DBF5C534CA0753CFE7C7F2AA65BF5F'));
dbms_lob.writeappend(v_lob,30,hextoraw('4EBF89C54448CEE3D47033CFD6802EB4A3AFB67BE3A545E60FEF03DBD3F9'));
dbms_lob.writeappend(v_lob,30,hextoraw('F3550C9DF9C93FE79CE69864CF51DFD7D3F1A432D9947D3B7F9E4F6A84CD'));
dbms_lob.writeappend(v_lob,30,hextoraw('9F7E09FF0039AAAD37419E0FBFF4355DA72338CFE3E9F4CD1702E34C79C7'));
dbms_lob.writeappend(v_lob,30,hextoraw('5F7233D33E86ABBCDE83FCF3EE2AA34F8EF838FC2AAB4F9CE5BBE39FC7F1'));
dbms_lob.writeappend(v_lob,30,hextoraw('A572AC5C79FF00C7E9C8EC3D38AACD37B919FC7D7E9555A604819F53DFDC'));
dbms_lob.writeappend(v_lob,30,hextoraw('640AAAD37539EFD39E3EBCF14AE558B6F3E3A83D7AE7FA62AB3CC0FAF1EF'));
dbms_lob.writeappend(v_lob,30,hextoraw('91FF00EBFC6AAB4FEE07AE09E7F5C555798633DB81F8D2B8D22D49313D0E'));
dbms_lob.writeappend(v_lob,30,hextoraw('473DFD3F0CD5392627D87A83F5ED551E7381F31279FBC7EBEFFE73559E5C'));
dbms_lob.writeappend(v_lob,30,hextoraw('F009041E0903FA6690EC5979DC67E604F4C6EF4CF3F4A81A5279EA0FBFF2'));
dbms_lob.writeappend(v_lob,30,hextoraw('EBEFCD567727AE30413FAE3D735097EC72467A11C76EC7FA1349FE255B52'));
dbms_lob.writeappend(v_lob,30,hextoraw('D3499E9F5F4FAF1D3F9542CC48E98F71C638AAECE0F3C74F527D3A76EF4C'));
dbms_lob.writeappend(v_lob,30,hextoraw('69073CB9E9EA07028D7FAFD07F81316F53B8FB67AF7C9CD464F6E3EBE9CF'));
dbms_lob.writeappend(v_lob,30,hextoraw('A66A31275E0FF3EE7D6A32FE993DFD38E3DA97F5E41FA8E66F7EFF00407F'));
dbms_lob.writeappend(v_lob,30,hextoraw('3FFEB540E49E31CFE1F5A7120E4E39CFA0FE44FB546C73DFF9FF0091487E'));
dbms_lob.writeappend(v_lob,30,hextoraw('631FE87F3FF1A85B07FC29CE4E06077E793F8D447D41C7E748A232B9EDC7'));
dbms_lob.writeappend(v_lob,30,hextoraw('B8EDFCAA161E873E9C7F93560A8E3273C7E7F9D30AE7B67B73D71DBFCF14'));
dbms_lob.writeappend(v_lob,30,hextoraw('6EC68A657271C038F4EF9FA7BD31A3183F5C7D3FC9ABA53D00E9FE473D29'));
dbms_lob.writeappend(v_lob,30,hextoraw('BB40038CFF009FAD20287920F2723E9FFEAE94C30FB678CFE7CF5E95A253'));
dbms_lob.writeappend(v_lob,30,hextoraw('D063F0FAF6A4D9F5FE9F9734583EF2879591D3AF1FE34A2107D3AFE1EBD7'));
dbms_lob.writeappend(v_lob,30,hextoraw('A74CD5FF002C74E073FD3E94A10771C1F4FEB45856290871D47D38E7EBDF'));
dbms_lob.writeappend(v_lob,30,hextoraw('B548B0FA76EBC7F9E6AE08F18E33FE7E99A78419E38FE74FF10D0AAB17B7'));
dbms_lob.writeappend(v_lob,30,hextoraw('F9FF003F5A9963F63F8F3ED53841DF9EC7EB8FF39A9157F9FF009E734088'));
dbms_lob.writeappend(v_lob,30,hextoraw('846003C7F9FF003E952228E39EFD0FE35205F4238FAF1EB5201D08E3B7E3'));
dbms_lob.writeappend(v_lob,30,hextoraw('FA53EE2183E83D38FCBEB5281F51498E7B71EBF9F7A7838ED9E3F2C1EDC7'));
dbms_lob.writeappend(v_lob,30,hextoraw('146E1F70A001D0F6EC3FCF4A7F0071CF7FF3CD3411D7A700907FA7F3A770'));
dbms_lob.writeappend(v_lob,30,hextoraw('78239E9FFD7A62EE283C7BFD29CA41C9DDDFA7FF00AA9B8CF23F4FE751AC'));
dbms_lob.writeappend(v_lob,30,hextoraw('603EE1DBDF8EFEF9A365FF000C0583CE3F23F4A70C8E09CFA7A543D49EBF'));
dbms_lob.writeappend(v_lob,30,hextoraw('8F4A7838EFEDFE3405C9C363AF6FF3DA8DC01EBFE27EBCFF004A879CF41F'));
dbms_lob.writeappend(v_lob,30,hextoraw('8FBFF8D182472783F8FE98A10762C6EC74FD3A1F4EF49BBEA7FCFE550EE2'));
dbms_lob.writeappend(v_lob,30,hextoraw('0E074CF53CF1DE94393D79C7AFF8530E84FB89C738EDD4FB75A7838CF24F'));
dbms_lob.writeappend(v_lob,30,hextoraw('355F70EB8FC78CF140607E9EFEBEC7A5205B16B77503273C7A7F3F7A030C'));
dbms_lob.writeappend(v_lob,30,hextoraw('F6E38E3EB55B79E467FC3F4A3700463279EDCF3D4F3D690EFA16831E7A73'));
dbms_lob.writeappend(v_lob,30,hextoraw('F8741FA53C30C641FCFF00CF4AAA0F419E3927DEA40D8F51DB03FCF6AA17'));
dbms_lob.writeappend(v_lob,30,hextoraw('75DFBFF5DCB2B211F9F43F977F5A9C3E3073CD67F5EE4FF8FE1520627FCF'));
dbms_lob.writeappend(v_lob,30,hextoraw('BD00D1A6B2F3D73CFAF6AB0930CF07FF00AFDFBD630931D339FF00EBFE9C'));
dbms_lob.writeappend(v_lob,30,hextoraw('D4AB21E0668158DD59BF5153A4D9FF003FCB8AC68E5E39279FF39E6AC24B'));
dbms_lob.writeappend(v_lob,30,hextoraw('D8F1FD6913636524C9ED823BD4EAFD39FF003D2B1D66C0EA7DBB7F9C55A4'));
dbms_lob.writeappend(v_lob,30,hextoraw('9BDCE7AFF9E69DC2C6BACA3F2F5A944BFCF1592B363F4FEA2A559493919C'));
dbms_lob.writeappend(v_lob,30,hextoraw('7D7AD3B93635965FE7FCEA412E6B3164EFFE7F9D4AAF4EE2B1A2AFF87F5A'));
dbms_lob.writeappend(v_lob,30,hextoraw('93774C77AA0B276FA0F7A93CC18CF3EF4EE4D8BBE66053F7FA5511271FE3'));
dbms_lob.writeappend(v_lob,30,hextoraw('4F0F8C734C56360371E9F5A4327BFE5FD6AA17F7FE7CD2F983B67D3AFF00'));
dbms_lob.writeappend(v_lob,30,hextoraw('9E6AC82C97EDD87F914864C7E1553CC3CF26937F7273DFD281965A4C8CF4'));
dbms_lob.writeappend(v_lob,30,hextoraw('C71C7149BF017BF18EBD6AAEF3FF00EBE691A41F80F4FF0038A43FD0B264'));
dbms_lob.writeappend(v_lob,30,hextoraw('E7AFF9E94C32633CF7FEBD3BD553275C9E7FCFBD465BDF1FFD6EB4016CCB'));
dbms_lob.writeappend(v_lob,30,hextoraw('EDFE1FE7150B4C40C7AFF93FE7DEAAB49D473C7AFEBD4D445B8E7F2FF27D'));
dbms_lob.writeappend(v_lob,30,hextoraw('690CB666CFE5EDFF00EB35134C7AF27B63D7F2E45542F8F6FAFF004C540D'));
dbms_lob.writeappend(v_lob,30,hextoraw('2919F9876E87E9EFE9498CB2F3138EDC8E87A6392327E950BCF8C8207D73'));
dbms_lob.writeappend(v_lob,30,hextoraw('EB551E6C8EFF00D3A7BF5E3350348304E7FCF6A571FE3FD6A59926E723F5'));
dbms_lob.writeappend(v_lob,30,hextoraw('271555E4CF5E3BF07FC3D6AABC83919C7D339F5EC73D6AAB4A7FBC0919FD'));
dbms_lob.writeappend(v_lob,30,hextoraw('7B52BFFC02D22E34B91D7B63AF3F91AACD3F2707B743823EB555A4C7396E'));
dbms_lob.writeappend(v_lob,30,hextoraw('3A74FE8735559CFAFE79CE7EB52D94A25B69C679CAF39FC3F2AACD2F3C75'));
dbms_lob.writeappend(v_lob,30,hextoraw('F4EBF9718CFA5572FD39FCBE6C76C1AAED23678C75FE2FE7C522AD65B139'));
dbms_lob.writeappend(v_lob,30,hextoraw('7F53839C9E483D7F5A83CCE0939233CE78C7D715197DDDB1DBBFE1D6A22F'));
dbms_lob.writeappend(v_lob,30,hextoraw('FCBB0FCE987CC98B0FD7FF00AFF9544F2EC031C924000904963FFD6A8F7F'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0C0FA7F3A87073967662BD8F0A3A8C0E8290160B7E44638C7E7EB49D390'));
dbms_lob.writeappend(v_lob,30,hextoraw('7DBFC8A8CB28EFF960F5FA7F8D349C77E7AF3E9F5FA5003F3F439F5FC4F0'));
dbms_lob.writeappend(v_lob,30,hextoraw('49F7A66EEB9C1EDEBFD293773FE4FF0085377E49C0C7D3A9C7BF4E297C81'));
dbms_lob.writeappend(v_lob,30,hextoraw('09BBBF4FA74FF1EF48791EDFFD6E7EA29D9C7F77FC9F6F7A6E01FCBF1F4A'));
dbms_lob.writeappend(v_lob,30,hextoraw('0A1A718C939E9D00A6606476FF003C67F9D4981DBF4F97EBD3DA8DBCF407'));
dbms_lob.writeappend(v_lob,30,hextoraw('E9F852022207383D7FC334983D0E31EC3FCF7A9703F9F43ED4DC139E33C9'));
dbms_lob.writeappend(v_lob,30,hextoraw('F5A008B03BF1F99CD1B41EFF00E47BD3B200E9D077CFB71FE452F207233F'));
dbms_lob.writeappend(v_lob,30,hextoraw('4CFF002F7A63DBEF23DB8EFDBB1FF1A4DBCF7FF3D6A4CF1F28FE9F95380E'));
dbms_lob.writeappend(v_lob,30,hextoraw('7A7D7BFF00F5E907E0458CF4FC85285EFDFD3FFD5536DE3F2CFF00934053'));
dbms_lob.writeappend(v_lob,30,hextoraw('E8318EFF00FD7A05F811F7C63F2C9A5E9DBA8FFF0057E3526077F4FF0027'));
dbms_lob.writeappend(v_lob,30,hextoraw('A5380C1EFF008FD31402634640CF1C81D7A538608C93C1E463F2A5DA3BFA'));
dbms_lob.writeappend(v_lob,30,hextoraw('FF009EA7D334A00038C74C7B502107F5A900031D7F1A4C9FFF005F4C73EF'));
dbms_lob.writeappend(v_lob,30,hextoraw('4F1F9E719FFF005530EA18FA1239FE74A17F1FA76FC8503A7F9F5FE94EC7'));
dbms_lob.writeappend(v_lob,30,hextoraw('E279ED9FC2810C1E9E9FE7AFD29E17B0FAD04E4FA01FE4D2E318E9C0A686'));
dbms_lob.writeappend(v_lob,30,hextoraw('0323F0FF002682DDF1CF7F43C9C76A320F61939FC7D7AD0307AF3FE7FCF6'));
dbms_lob.writeappend(v_lob,30,hextoraw('A7F7E82DF6B8D2E3AF52697764F707A73FD297DFFCF3F8D1EF819A402E73'));
dbms_lob.writeappend(v_lob,30,hextoraw('D7B1FE5EB4EC918ED9F4FCBD693AFD7FFAF484FD7F3FA7BD01F21F9EFF00'));
dbms_lob.writeappend(v_lob,30,hextoraw('87249FD33487EBE9D3A75A4EBEDC7E38A391D09FF3C53014700F19C0FC3B'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A3D33FCFD299C9E391FFD6A5CF4E7247F93407E571E727804F3DF9FFF00'));
dbms_lob.writeappend(v_lob,30,hextoraw('55341238E08F6FF39A6313C631FE7F0A50C49EB9079E9480981207F9FD69'));
dbms_lob.writeappend(v_lob,30,hextoraw('FBF18FEA7FC6A00474FF00269D9F7FE5DA8F50EA4FBF3DBD87F3F61DA94B'));
dbms_lob.writeappend(v_lob,30,hextoraw('E38FC39E3A7EB55F39E9C7207F3E94BB89C7273FFEBA045A0C3AFF002EBF'));
dbms_lob.writeappend(v_lob,30,hextoraw('CBB53D5FF03FCBDBF4AA609FF3C8A782477E7FC0E28F540CBA1FDFBE38FF'));
dbms_lob.writeappend(v_lob,30,hextoraw('003EF5615FD49E7DF9ACD5C9C73EFD49C7E9F9D48AE71D4FE67F9FFF005E'));
dbms_lob.writeappend(v_lob,30,hextoraw('81AF3B1ACB27A1271FD3F5AB2927F2E3FCFE59AC8573D3F9FD381F9D5949'));
dbms_lob.writeappend(v_lob,30,hextoraw('47D3FCFF00F5AA7B035E86B2C87DFD2A757E39FA565AC83D7F2E3D7DB8E2'));
dbms_lob.writeappend(v_lob,30,hextoraw('AC2C9D067DB8FA5325A34D5FFC9ED53AC9D0647F2ACC1263BF6FF1A9849C'));
dbms_lob.writeappend(v_lob,30,hextoraw('F5CD55C9350383D7E952071EF59CB254824F7FF3F85344B4686E1FAFB53C'));
dbms_lob.writeappend(v_lob,30,hextoraw('38F5FD6A887E3FC3FAE69E1B1DCFE7E954268D70E7A76A4DDEFF00CBDEAB'));
dbms_lob.writeappend(v_lob,30,hextoraw('6FCF4CFAD1B8FF009FCEB4332C6FF5269A5C639E7F4AAC5F1D3AF6A617C7'));
dbms_lob.writeappend(v_lob,30,hextoraw('5CE7AD21D8B45F8E3F5F7F6A6993D87BFF008D562F8E73FF00D7151993EB'));
dbms_lob.writeappend(v_lob,30,hextoraw('FA8FEB4AE0592FF97F9CD46CE7FCFF009F5AAC64233D7A7BE3A706A3329F'));
dbms_lob.writeappend(v_lob,30,hextoraw('AE3BFBD2289DDFFCF5FF003D2A2690FE9F4155DA523BF5F7FEA79A81A5C9'));
dbms_lob.writeappend(v_lob,30,hextoraw('3F31EDF4F5ED45C1161A4CFB73EA7FCF7AAED201DF23DB9FD31503C9EE7F'));
dbms_lob.writeappend(v_lob,30,hextoraw('3C55779BD0F4E39F7A43489DE4EB86E33D7FA73C75FA55379B0BC73DBA93'));
dbms_lob.writeappend(v_lob,30,hextoraw('CFBFD6A279B1D4E4E3B0E39FAD547981CFDE3EE7DBA7F9C54BFC0B48B0D2'));
dbms_lob.writeappend(v_lob,30,hextoraw('E7B8CF5F4FE593DEABBCB9FC3DFE98E71D38AACD2F6CF1F523DEA167E491'));
dbms_lob.writeappend(v_lob,30,hextoraw('C7D3D3A63AFF005A4D94913348723383F5FF001A8998F507DB9F5FA541BF'));
dbms_lob.writeappend(v_lob,30,hextoraw('A93C76FEB4D2C723AE3B6EC54F62BFC890C878EB9CFF009E6A36901EC411'));
dbms_lob.writeappend(v_lob,30,hextoraw('DF3C7EA2A367E98E3FCFB530927FC7F0FCA98AFF003D0796CF5C9F6CFF00'));
dbms_lob.writeappend(v_lob,30,hextoraw('9EE69B9EF9E0F3CF5FE5FD2A3CFA63E839A4278E307A741FFD6A1FA079F4'));
dbms_lob.writeappend(v_lob,30,hextoraw('1E4F6C7F8FAF18E4E7F0A69CF1C7239C13FE1516EEBF2851FE7A7F852FE2'));
dbms_lob.writeappend(v_lob,30,hextoraw('C4FD7A7E278A3F32871F70DDFDE81E9C6073EF4CC1E8718CF6E83D683838'));
dbms_lob.writeappend(v_lob,30,hextoraw('E9EFF963AF5A417063C8F9793C820FD29579E78FE47F9D37BF191C7B9FA5'));
dbms_lob.writeappend(v_lob,30,hextoraw('2E3F13D0F6E9FAD01DC5F5EF93E9DF8EFF004A3E6E0F183CF7A39EFC639E'));
dbms_lob.writeappend(v_lob,30,hextoraw('7A546E4E09E9839E3AFD2801E08C9C71DB9E466939EBD4FB7F9FE74839E7'));
dbms_lob.writeappend(v_lob,30,hextoraw('8E7F43CD2F5EBDB8EF9CF19EB4BFE00073DB9A6E483D33D7FCF734FF0063'));
dbms_lob.writeappend(v_lob,30,hextoraw('F4E7FCFF009347EBF5E3BFD314FC9811E07707AF6FCFFF00AF48C4E7038C'));
dbms_lob.writeappend(v_lob,30,hextoraw('67FF00ADD4F352600E7FCFB5275EE0E78E7FC3B7FF005A801858E70303BF'));
dbms_lob.writeappend(v_lob,30,hextoraw('4A0003AE493E9C6307E94EDA3B71D79FFF0055382FD4FD7F0F5FE748634E'));
dbms_lob.writeappend(v_lob,30,hextoraw('7FDA1EB83F4FAD28270091D7D7AFBFF2A3181CFBFF009C0A5C639CF7CD1A'));
dbms_lob.writeappend(v_lob,30,hextoraw('8851CF53C81CFF00FAFAD19C63238CFEBED40039E78F7FE54BB7B6727F4F'));
dbms_lob.writeappend(v_lob,30,hextoraw('E5405D0BF91FF38A518EBB87E1498CF71F89CFF4A5FE9400E18CE3F2FF00'));
dbms_lob.writeappend(v_lob,30,hextoraw('39A39F6FC0520C75C743F974F7A5EBD323B5301C323A118F7F5A786E9C01'));
dbms_lob.writeappend(v_lob,30,hextoraw('EB5163B720FB53801DF079EBF5F4C7B50BCC43CE09E7278FD6978FD299C0'));
dbms_lob.writeappend(v_lob,30,hextoraw('27FAD29CE3AFF9FF003ED4C3B8BDF900FF009E9FE4D1BB183FCFF3FE74CC'));
dbms_lob.writeappend(v_lob,30,hextoraw('907B934107DC7FFABDA90C7E73FE7A7F851CD307A13EFCFF00F5E9DD3DF3'));
dbms_lob.writeappend(v_lob,30,hextoraw('4EE21D9183DFB77A66493F53FE23EB4DEA71F8714A38F7FF000347E7F201'));
dbms_lob.writeappend(v_lob,30,hextoraw('F9C73FCB1FCE97271FD7F5F4A8C1CFE39FC3B53BF1EBFE1F4A2F70EE2162'));
dbms_lob.writeappend(v_lob,30,hextoraw('3AFE7481893E9FCA90919231CFE7CFF3A5C0F6E78FD3F3A4029E73E9FAF1'));
dbms_lob.writeappend(v_lob,30,hextoraw('CD00800E075EDF8F51934DDA739C9F7FE42819F4FEBCD3B80F0D8E48FF00'));
dbms_lob.writeappend(v_lob,30,hextoraw('3DAA4C83C11C7F85427B7247F87F914A0F3C67BFAD0C3EFF00F862618F5A'));
dbms_lob.writeappend(v_lob,30,hextoraw('4C8F5F7FF38A88BE33DBFCFBD01B3919F6E4FD7BD1A7DE04BBBD09A7649E'));
dbms_lob.writeappend(v_lob,30,hextoraw('87BF6FA7B545BBF1EDFF00D7FCA941C77EDFCA8BA0FC89C37D3FCE69FBC0'));
dbms_lob.writeappend(v_lob,30,hextoraw('C6319FF3E955C13D8F1F8F5F7A07D4FF009FC7FA502FD4B824E7FCFA54AB'));
dbms_lob.writeappend(v_lob,30,hextoraw('27D7D3F3AA3BBEB9C66A40C78F6FF3F5F4A56FC869FA1A4927D4FF008558'));
dbms_lob.writeappend(v_lob,30,hextoraw('493A5652CBC9C8E38C66AC2B720F4F5FF3FF00EAA43B686B2BF4C9F5EFEB'));
dbms_lob.writeappend(v_lob,30,hextoraw('53ABF4FCBD2B2D64EE7FAFB7D6A7128C1CFA7E34C968D457F5FD2A40FF00'));
dbms_lob.writeappend(v_lob,30,hextoraw('E79ACE494F1D7D3F5AB21C7B1FF3EF4EE4B8F7D2E5E5623AF3F43528931F'));
dbms_lob.writeappend(v_lob,30,hextoraw('FD6FF0AA21FB7E35206CFF009FC6992EFD8D72E33CE31F9FF4A42E38EDCF'));
dbms_lob.writeappend(v_lob,30,hextoraw('F9EF506F1C73FE1FA530B8FF003FE735B191317EB8CFE1FF00D7A6B39C70'));
dbms_lob.writeappend(v_lob,30,hextoraw('7A7F5FFF005D425C75FF00EBFEBC7AD44CFF00E47E3487A226331F4069BE'));
dbms_lob.writeappend(v_lob,30,hextoraw('675F5A837E0771EFFE4D465FAFFF005BEBEB48098CB804F4E3E9FE350997'));
dbms_lob.writeappend(v_lob,30,hextoraw('3D33C71FCBFCFE15033E78ED9CD445BD0E31C75E3F97A522AC4E64232300'));
dbms_lob.writeappend(v_lob,30,hextoraw('F3F8FF00FAB9A81A53FDDCFE59EBF85577723F9FAFE9503381D3079FAFE7'));
dbms_lob.writeappend(v_lob,30,hextoraw('48AB133CA720F61DBFCFB555924E3AE38EA3BF6FF3C546F2772467A0C67B'));
dbms_lob.writeappend(v_lob,30,hextoraw('75AAAEFD7E6FCFDCD276F9956EE4ACE7B1273DF3F8555691B3C1EF9FA7FF'));
dbms_lob.writeappend(v_lob,30,hextoraw('00AAA3326793C11FE735117F4E7039C8A577F328919D8FA7E7F5F7FF003D'));
dbms_lob.writeappend(v_lob,30,hextoraw('2A32FDB041C1FF0039A6673D0FE78EB9FE54CDC3A1CFAFE5F53486484E32'));
dbms_lob.writeappend(v_lob,30,hextoraw('73FCBF3A633648E4E0FE9DFD298CDEDF5FAFE74CE79E49CFF9F5FD28063C'));
dbms_lob.writeappend(v_lob,30,hextoraw('B73DC81EB834CDE3D40CFF00F5E933F4FC3BFE1F4A66FF00607078E7FA7F'));
dbms_lob.writeappend(v_lob,30,hextoraw('8D1A8BFCFF0021C1BF3CF6E3D31CD1EE403FE3C73D2933823D7E9FFEAED4'));
dbms_lob.writeappend(v_lob,30,hextoraw('0E9C019FA9CFF3E7140FA875C8EA476E0520F4CE31CF3D80A5DC3A73FE7D'));
dbms_lob.writeappend(v_lob,30,hextoraw('F8A68E07BF5E7B7FFAE80DBBEA293C7439FD0FF9FC29013EC3923A0CFD3D'));
dbms_lob.writeappend(v_lob,30,hextoraw('6938F7FC7FFADFCA9C31FAF7F5CD20173CF27BFAF6EDFCE9430C63DBF3FE'));
dbms_lob.writeappend(v_lob,30,hextoraw('B4C241C104F3FE7D693B718EBDC91401267F100FBF15131E7006477FF3FF'));
dbms_lob.writeappend(v_lob,30,hextoraw('00D6A5C91DF8C74EDFE7147B8C63FCFB7AD001D7A70052E4E3B9C0F61D28'));
dbms_lob.writeappend(v_lob,30,hextoraw('E31EFEFD69031CF3823DFF009F4A07F2147FB5F867F5E9ED4E1C0EA0FAFE'));
dbms_lob.writeappend(v_lob,30,hextoraw('BDA93F0EDDB1471D71CF7CFF009EB8147E22023B8C63F1FE7401DF38EF91'));
dbms_lob.writeappend(v_lob,30,hextoraw('CFE54647F87E9FE149C139FA67DE818EE9D738FF003ED4023FCFE1E82A2E'));
dbms_lob.writeappend(v_lob,30,hextoraw('F95F6E839FCEA419C7619FD3BD02F21F91D734718E0F3D7D7BFF00851807'));
dbms_lob.writeappend(v_lob,30,hextoraw('BE3A7BE3F1A38C0ED8F6CD0021F6EF4007F03F853BD307DBFC2939C7A7FF'));
dbms_lob.writeappend(v_lob,30,hextoraw('00ABDE8013183DC7D07E1E80D3BFCF3FAD193F4FFF0057F9F4A518E80E68'));
dbms_lob.writeappend(v_lob,30,hextoraw('0B8A38EA3FAF14A49EFE99E693A73DBA519E9E9FAD1D8351DF4206693763'));
dbms_lob.writeappend(v_lob,30,hextoraw('B76EFEBEB4CDDD7DFF005C839A72B83D47F9FA6680177E78C639EBFE14EC'));
dbms_lob.writeappend(v_lob,30,hextoraw('FA7E9F5F6A8CEDC7F3C63F5A50463D7F01E9476F501E339EFE9F8FF91484'));
dbms_lob.writeappend(v_lob,30,hextoraw('FF009E3E94DEA79CFE18FEBF4A5E33D3BFD680EE3811D71D7D3F9D203EE4'));
dbms_lob.writeappend(v_lob,30,hextoraw('669BF4CFAD211D8F5C7F2A7A812673DC1E7FC693BF4C0CD378FC3AF4FEB4'));
dbms_lob.writeappend(v_lob,30,hextoraw('74E47A7F9F7A5B7CC2C389FA0F7FF2693238C7F2FF0038A66EE9C7FF00AE'));
dbms_lob.writeappend(v_lob,30,hextoraw('807D07E78A1DC0781CFAFD7EB4B8E3F4F7A6EEED8FF0FE7467181D476E28'));
dbms_lob.writeappend(v_lob,30,hextoraw('0F4D87027AF1C5192BC1F5C7BFE34DE873FD28DC3FCF4A3F1FEBA00E273F'));
dbms_lob.writeappend(v_lob,30,hextoraw('9FD3F9D3093D8F19E9EDF953B20FF2FE74C391C8FF003C77A7F20D3B0ECF'));
dbms_lob.writeappend(v_lob,30,hextoraw('D33F5A538E29A07F9FCBB0A79C1FCFFC3DA900BDBDFB67B73F952F5FAFFF'));
dbms_lob.writeappend(v_lob,30,hextoraw('00AFFF00AD4C181F4033FE734B9CFF009FAD2B0121E38E9FFD7A07F9FC29'));
dbms_lob.writeappend(v_lob,30,hextoraw('9D7BE3FF00AD8FF0A4FA678F4E86AB5B01364F1CE3FCF1FAD00E3F2FF0FC'));
dbms_lob.writeappend(v_lob,30,hextoraw('2A024FF9FEB4E193DFD8FE228F2116D5C7B73FCAA75703AF1C7F4F4ACFCE'));
dbms_lob.writeappend(v_lob,30,hextoraw('3FFD5F854CAFFE14AC3BEA682BFF0091532B03F8FF00F5EB383D4C1FD71D'));
dbms_lob.writeappend(v_lob,30,hextoraw('3FAD2655CD38DC0F4E99FF003DEA7490703B7F9FE95941CFB9FF003D8D4A'));
dbms_lob.writeappend(v_lob,30,hextoraw('AC475FEBF9D34435F7335964E79FA7F9FC6A657F73FCAB2849F5E2A64939'));
dbms_lob.writeappend(v_lob,30,hextoraw('1F4FE7542FF2374B7D47F5CD34BFA73FE735117EBDFF002FE74C2DFA7FF5'));
dbms_lob.writeappend(v_lob,30,hextoraw('FF001AD4E7B136FC1FF1A617F5FCFB74FCEA12F8E9EBFE351B3FA70704D2'));
dbms_lob.writeappend(v_lob,30,hextoraw('7F78D1316F5C67F1E9EDFD6A079300E3B7F88F6F4A88BE3D4E7D3F1FF3D6'));
dbms_lob.writeappend(v_lob,30,hextoraw('A2693AE3D7B7F3A3F21A252F904720FB9F7FFEB540CE7A72707DBFCFE94C'));
dbms_lob.writeappend(v_lob,30,hextoraw('7933EDEDDFFC31555D8F50783F8F7A5FD7F4CAB1333E33CE3AF527F2E2AA'));
dbms_lob.writeappend(v_lob,30,hextoraw('B498CF4EB8E79A8DE418EB8C7BFF002C557698E7A0079FF3D6A5B297CEE4'));
dbms_lob.writeappend(v_lob,30,hextoraw('8F2F7CE3EBCFE58AAECE1BB1FD31F96334C6901EF9FCBDF150961FCC724F'));
dbms_lob.writeappend(v_lob,30,hextoraw('FF00AA915EA3C9EC08FC33F97151927E847BE0FE7FFD6A613CF0474C719E'));
dbms_lob.writeappend(v_lob,30,hextoraw('B46E07DFF1FA1FE74BB0C76EE700E71C71485C71919FAFEBFAD318AF4E7F'));
dbms_lob.writeappend(v_lob,30,hextoraw('CFE751E40181CFD7B7D4F7A5FD7F561E9E64A587A91CF4C8C1EBC75A613D'));
dbms_lob.writeappend(v_lob,30,hextoraw('793FE7F5A6D00E0753C71FCB8EB4C40093F4E3BFAD1CE7B13F9E28E4FDE0'));
dbms_lob.writeappend(v_lob,30,hextoraw('ADD7A0E9F8F4FA5275E48C75E9CFF875A0077F5EE3FA77A419C7A7A9E0FF'));
dbms_lob.writeappend(v_lob,30,hextoraw('008526E3EA3F3238F634B93C75DDEA3FFAE2818B819041071D8D19FCFDFF'));
dbms_lob.writeappend(v_lob,30,hextoraw('00FD749853EB9F6FCA8E3A0FD7F01F9D1F787EA0704761F4FF00F553719F'));
dbms_lob.writeappend(v_lob,30,hextoraw('43EDF4FF000A712475C7E1F963D69075FF000FD69200C63BF7ED4A78EE33'));
dbms_lob.writeappend(v_lob,30,hextoraw('ED499FA7E5F9F140C9F407DB23E9EF407F981C8E833FE79E9474F4FCBFC9'));
dbms_lob.writeappend(v_lob,30,hextoraw('A0823A7EB9C7E349924FF80C503FCC3767181C8FCA9E71CE7EF714D1D393'));
dbms_lob.writeappend(v_lob,30,hextoraw('D39E98F5FF00F551F8FD3F3FCA988760F033EBC7F234671DBFCFD7DE8183'));
dbms_lob.writeappend(v_lob,30,hextoraw('FE7AFF009341F5A401BB9E98CF4FFF005523671E949E9C648FF3F5A6EE20'));
dbms_lob.writeappend(v_lob,30,hextoraw('F7009EDF4F6F4A6BB00EC851CE7D71DE9E08EDCFF5C75A68F63C74E40FFE'));
dbms_lob.writeappend(v_lob,30,hextoraw('BD281F41DBAD20FB85C9F61E9E9DE9DCFE23FCF279A674E33D71F4F4F7E2'));
dbms_lob.writeappend(v_lob,30,hextoraw('8C700903F0A603C7F9C7F3A5CF627F1FFF00575A6FBFE3FE78C51C71F4C7'));
dbms_lob.writeappend(v_lob,30,hextoraw('FF005E907CC7E320727D7FCFF2A41C743C5333CF3F5FAFF5A5C723A0FCFF'));
dbms_lob.writeappend(v_lob,30,hextoraw('00AD1DC2C3F2075C907F1E3FFAF46ECF3DBD3AF7F5EB518FFF0057A7F8D2'));
dbms_lob.writeappend(v_lob,30,hextoraw('F4F5E9DC751FE7E947E61F31F9E7A7F9273DFE940C7FFABF9F7EF499E7DF'));
dbms_lob.writeappend(v_lob,30,hextoraw('FCE7A7D68E3B81EBC7E940790B8FA8E7BF43EF49D3201E33D87E78FCE8ED'));
dbms_lob.writeappend(v_lob,30,hextoraw('81FF00D7FD690E7FFD7F850038B7B7B7E94BBD7BF527BFB7D6A2CE4E08FF'));
dbms_lob.writeappend(v_lob,30,hextoraw('003ED4AB8FE5D7D3F9D03B2FC09B239FAFF3FC29370E7FAFE9CF4A67D7EB'));
dbms_lob.writeappend(v_lob,30,hextoraw('EBFD2978FEBEBEDFE7D685FD7EA2F51DD7FA7FF5E90639E49A6E33C75EA3'));
dbms_lob.writeappend(v_lob,30,hextoraw('9A5E7FAF3400BC0F7FF23EA28CF1C7D78C7D2985803D7FC7A74EFDA99BB3'));
dbms_lob.writeappend(v_lob,30,hextoraw('EDFE7E9ED4FB012E738E3F33FE451F9FA74A629F61F87E1FD29C08F4FCBF'));
dbms_lob.writeappend(v_lob,30,hextoraw('0A5DC351DD3F3F4EF9EFC52640FC3FAE6999FF000FC3B8A5CE33C7F9FE54'));
dbms_lob.writeappend(v_lob,30,hextoraw('301723D08E98FF003F9D0727A7A76C8A6649EA7FCFE58A7E73FE78FF00EB'));
dbms_lob.writeappend(v_lob,30,hextoraw('71400BCF7FF39F414E1EFD71C1C53323AF4FD4F5A01FD0D3FF008617E63F'));
dbms_lob.writeappend(v_lob,30,hextoraw('8A5079E99EFE94C240FD3FCFA74A33EDD0F7F7FC69751A1F93F9F3FD28CF'));
dbms_lob.writeappend(v_lob,30,hextoraw('EBE99FE629B9FF003FFEAA4CFEBFFD6FEB407E1624CF3F43DBF3A01FF3FC'));
dbms_lob.writeappend(v_lob,30,hextoraw('F9EF4CC9E9EDEF47E3EF40B6F98FCF23BF6F5A507A7E751823F5E69C08F4'));
dbms_lob.writeappend(v_lob,30,hextoraw('A77FEBF40F993A9F5E0FE1EFC54A1FFF00D633553774C77E3F5FFEB53D5B'));
dbms_lob.writeappend(v_lob,30,hextoraw('B75EF9FCA876F98EE5C573D39F4EF53ABFE3544376FE5522B8E3DFF0FF00'));
dbms_lob.writeappend(v_lob,30,hextoraw('38CD25FA7417FC31A21FFCFF009E2A60C3208EF59C1F8EA063EBD2A647CF'));
dbms_lob.writeappend(v_lob,30,hextoraw('53FE71DE98B737F763FF00AD4D2E7F0CF5F715017E9EDF4FFEBFE14C2E3B'));
dbms_lob.writeappend(v_lob,30,hextoraw('F5C56C60BF0252F9FBB838EBC66A32C79F4EBC8EB50B3F7F51DBAF39F6C5'));
dbms_lob.writeappend(v_lob,30,hextoraw('44D20FC4D21AD74262FCF6FA8FCFFCE6A069327AE31FE7A7D6A17933D0E7'));
dbms_lob.writeappend(v_lob,30,hextoraw('EBDBE9503BE31DFF00A75F6A3F51F72C3B1FAF7CFF009E2AB31EB827D3BE'));
dbms_lob.writeappend(v_lob,30,hextoraw('3F4A85A4CF1D3FCFB557697F841CF3EFEB51AF994912B39ECDDFDBA7D0D5'));
dbms_lob.writeappend(v_lob,30,hextoraw('767232783C7AF5FCBA734C2DD39FF1F6FAD44580E9FE7FCFF5A9B94890B6'));
dbms_lob.writeappend(v_lob,30,hextoraw('EFFF0057E74C63DC738A8F7139FAF6A682475F53FCA82FEE1FB81EBC7618'));
dbms_lob.writeappend(v_lob,30,hextoraw('1FD69A48FAFF0093CD213D3BF1CE3F2A8896CF6E9FE49A1069F81213DFAF'));
dbms_lob.writeappend(v_lob,30,hextoraw('3FD3F3A8D9C1E80F3E9D0534A938E3348A49C6EE3A723FA8A62245248E0F'));
dbms_lob.writeappend(v_lob,30,hextoraw('7EE7E87FA538723A9E9DF3FCE9981D73FE734BD39FF3FE7F3A00737E1E9D'));
dbms_lob.writeappend(v_lob,30,hextoraw('C7F4E683D47F8FE7483E61F5EE4F19FF00EBD1F28EFEFF005FF2697900B9'));
dbms_lob.writeappend(v_lob,30,hextoraw('03B81F5F4F5A5E99E49EDE9FAFD69303D06338FF00269B8070323FFD5FA7'));
dbms_lob.writeappend(v_lob,30,hextoraw('5A60480FA7FF005C73C7B5213E9CFF0091EB4C071D0E3F514B9CF6EC7A7B'));
dbms_lob.writeappend(v_lob,30,hextoraw('D2EC31DB8773D3D3F9F4A5CE30463FCF14C073C15FCC7F9E294F3DBB75F7'));
dbms_lob.writeappend(v_lob,30,hextoraw('FC6801F91D00E47D7BD070727BFF009C7F914D1D3D3F5F638C9A327B64E7'));
dbms_lob.writeappend(v_lob,30,hextoraw('EB47601C0E3AE69320F18E0F4C114D18EFF973FD0D1DF3FA7D3D6801E4E0'));
dbms_lob.writeappend(v_lob,30,hextoraw('FA03EFF95267E9FE7F1A403A9C73F873474FF3D6801727A673CFF4FF0039'));
dbms_lob.writeappend(v_lob,30,hextoraw('A50477EB499F5EDDBA73CD267F2EBFE18A02E3B83EB9F6EFED4B9EC78FAF'));
dbms_lob.writeappend(v_lob,30,hextoraw('AF4FF269A38EB9E9D3F9528C11E9C7F8E4FE74075179F634B9F5FA807AFB'));
dbms_lob.writeappend(v_lob,30,hextoraw('1ED4C27B609FA7F9C5193D7B501FD7EA484A8FC7FF00D44D27EA07D7EB51'));
dbms_lob.writeappend(v_lob,30,hextoraw('B00718EBCF4CD28278FF001F5FA51F780FCFA7EB9EBD69723AF41F871FE4'));
dbms_lob.writeappend(v_lob,30,hextoraw('D30119F6F5FF00EB7B52F5F538EFED47F907614F5E9C74FE5F85291EFD7F'));
dbms_lob.writeappend(v_lob,30,hextoraw('5EBE94DEF8141FCFD280FEBE41CFF9E734BCFF009FAFF9E29B93C74F6FF3'));
dbms_lob.writeappend(v_lob,30,hextoraw('F5A78FD383D450026718C8FD7AE3341C9E476F4E9814BCF7FF003D78A43C'));
dbms_lob.writeappend(v_lob,30,hextoraw('7E278FE9E9E940201EBC8FF3F4C53F8FF3FCAA3CFF009EDFCA90FAEE1C70'));
dbms_lob.writeappend(v_lob,30,hextoraw('28FEBA8C79CFA77CE78A01FF0023DE9A5B1EF4E196E4F739A5B0850724F1'));
dbms_lob.writeappend(v_lob,30,hextoraw('D07EB9CD19E78E9FE7DE907AF27D793FFEAA3279C64F6E6980993EBDFDC7'));
dbms_lob.writeappend(v_lob,30,hextoraw('AFBE69C3DFDBDA9BD7EBD381F89A08F423F1FEBFE7BD01FD7CC5FD3F0F6F'));
dbms_lob.writeappend(v_lob,30,hextoraw('AD26DC673F4E3B53791F875E3D68CFE3FE7E94583F51FF00E47F9EB477E7'));
dbms_lob.writeappend(v_lob,30,hextoraw('FCF03D69BB876EA067FA7BD293C7A7F9E7DE900B9FCBFC7141E4F1FE39A6'));
dbms_lob.writeappend(v_lob,30,hextoraw('649FC3FCF14631C9FF003FE4D003F039FF003FA518CF739C773CD3464F7C'));
dbms_lob.writeappend(v_lob,30,hextoraw('01C8FF00F57F914671EDFE7DF9A7F301D8F43FA1A07F9FD3B53327D4F4FE'));
dbms_lob.writeappend(v_lob,30,hextoraw('BC52F43C91DBD3DFDA8F980F27D8FD7F5A70C62A3071FE7D3F5A706FE5F8'));
dbms_lob.writeappend(v_lob,30,hextoraw('FD714B701DD303F5E7A519F5E3BFE1C9EFC669075CFF0093FE34BC76E3FC'));
dbms_lob.writeappend(v_lob,30,hextoraw('FF00F5A800CFA7D7FAD2E7D7B7D29BD31F9FBF1F9D267FCFE5FD680EE49E'));
dbms_lob.writeappend(v_lob,30,hextoraw('94838E87AF5A667A7AE71FD68FF3DBA7B53F260499FF000E9FFD614B9FFE'));
dbms_lob.writeappend(v_lob,30,hextoraw('BF3EFF00875A8C673EBDB3F4A507FAF5EDD68F4DC44D9ED93FE1DB8A9149'));
dbms_lob.writeappend(v_lob,30,hextoraw('E3BFD3F4AAD93C76E7FCF1C53C37B761FE7F5A3C97F5F90FA16D5BA7D2A5'));
dbms_lob.writeappend(v_lob,30,hextoraw('563F963F0FCAA906FF00F57D3FFAD4F0D9EE79F5C7E3EF408DF2FF004FF3'));
dbms_lob.writeappend(v_lob,30,hextoraw('FF00EA14C2DEA076350647E38FCF39A8D9FF005E7BFAF4ADBD4C499A4E3E'));
dbms_lob.writeappend(v_lob,30,hextoraw('950339393C7E3FE73DAA32DC123DFB7F5A85C9F6FCFEB53741DB6B0FDD9D'));
dbms_lob.writeappend(v_lob,30,hextoraw('C49E0FA7E5E9E951B3E3903A77FF0038A899F8EE0F238FF3F4A859B3D33F'));
dbms_lob.writeappend(v_lob,30,hextoraw('E7391EB4994B51ECDD79C67D2A02D8FF00EBFEBD69ACFC73FE7B7F5A84B0'));
dbms_lob.writeappend(v_lob,30,hextoraw('3D4E0FF9EF52F62D2B7F5A8F2D9EFD3B546CC481E9FE71DE984E38073C77'));
dbms_lob.writeappend(v_lob,30,hextoraw('FD3B5267D4E695BF018FCFBFB9A3776EA7FCFAD47BB8E0F1DFFC69A491FA'));
dbms_lob.writeappend(v_lob,30,hextoraw('7D3FA53192337D3F4FF3D69BBBD7AE3FCFB533EB9FE7F4FAD273E9EDFE34'));
dbms_lob.writeappend(v_lob,30,hextoraw('213D47E40EE7DB1FA500FF004E98F5EF4DEDD39F7E7F4A5CFD07FF00AFEB'));
dbms_lob.writeappend(v_lob,30,hextoraw('405FD50A3AE4E3FCF269F91EDFA7E7D7BD30673C038C93EBFCE97AFF002F'));
dbms_lob.writeappend(v_lob,30,hextoraw('F38FC281FE63FD976FE1FF00D6A4FCCF34CDBD48073FE78F4A70CFAE7AFE'));
dbms_lob.writeappend(v_lob,30,hextoraw('428B885CFAF6CF4FC29D95FD71EDD3FCF7A6673ED9E3D697A73D6818B81D'));
dbms_lob.writeappend(v_lob,30,hextoraw('3181F87A7FFAA94291D33C7AD2027BE7D3FF00D78A4C8FFF00552FEBB80E'));
dbms_lob.writeappend(v_lob,30,hextoraw('6CE3938E78CF5E31467D467FFD5499CE703DC7E34A4F6FF3FCE8D83E42F3'));
dbms_lob.writeappend(v_lob,30,hextoraw('CFB71D7F0E94A0F3C0EBC7F9FC299EFD33CFAFAFBD1D07E1DBFCFB53EE1D'));
dbms_lob.writeappend(v_lob,30,hextoraw('74FEB51FB873C74E6938FF003DBBFD3FFD74DDDC74E99FCFFF00D74B9EC7'));
dbms_lob.writeappend(v_lob,30,hextoraw('07FCE6900EFF001EF47CBDB3C71C53383DBAF341FAF4F6F7A0077AF4FF00'));
dbms_lob.writeappend(v_lob,30,hextoraw('3CD341C1EBF966973C7D3B74E2979FFF005E7DFA9E940003EE718C7F8D2F'));
dbms_lob.writeappend(v_lob,30,hextoraw('20E73EFCFF009ED4DC1CFF005FF1E94A781EBD28D7FAD8050C7A71F88F4F'));
dbms_lob.writeappend(v_lob,30,hextoraw('FEB5389F5C73CFF2FC2980FE5D81E9FE147E7FE1C0A34BEC1F88EEC3B9CE'));
dbms_lob.writeappend(v_lob,30,hextoraw('3FCFE14BE83F9FFF00AFBD37D3FCFB5293F81FFEBD1FF0442E73DBF1A39E'));
dbms_lob.writeappend(v_lob,30,hextoraw('48CF4FEBF853323D7FCE0519CF7E7AE3DE81A1DBBB77FCFBD00B5307A8FA'));
dbms_lob.writeappend(v_lob,30,hextoraw('D3811C60E07FFAFAF1400EE7A923F5E69473FCFB8E00FAD267F9E3FCFE14'));
dbms_lob.writeappend(v_lob,30,hextoraw('873EDFAFA7FF005E801FD7A751CFB7D6933FCFDA999C90B8C7BF7FF0A00E'));
dbms_lob.writeappend(v_lob,30,hextoraw('7B1FFEB7E2051A07A8EFAFEBF8D46F91CF5E73FF00EBEF5293C7F8D47CE7'));
dbms_lob.writeappend(v_lob,30,hextoraw('1E9C7EBF951FD761F6F4115B232793EE734A18FF009EDFE7148DFD7FFD5F'));
dbms_lob.writeappend(v_lob,30,hextoraw('A5282719F7EFFD28DBE6225071DFFC7FA9A4C907F0EDFE734C0D8CFF004F'));
dbms_lob.writeappend(v_lob,30,hextoraw('C29339EB9A107F5725CE33FD6909FCBA7AFB7A53475F5E946EC1FE5F87BF'));
dbms_lob.writeappend(v_lob,30,hextoraw('5FAD01A8EEBD7FCFEB498039CF3F503F9FAD2673FE7FA75A4CF3C7F9EFD6'));
dbms_lob.writeappend(v_lob,30,hextoraw('8B031DFE7F134678E293D0FF009C7EB4671FE7F4E2806BAFF4C774E9EF4B'));
dbms_lob.writeappend(v_lob,30,hextoraw('83D87F3F5EF9A6F6CE4F3F4A09FF003FCBF5A003F5FD7F3A4C67FCFB8A5C'));
dbms_lob.writeappend(v_lob,30,hextoraw('E73D4F3FFD7E9467BFF33DA800C7E5EDF8FE9475FAF23FAF3D68C8E79A3F'));
dbms_lob.writeappend(v_lob,30,hextoraw('CFD6800E7E9EFC0A01F7FE7FD293FCF1499FD38CFB7B1A06484F6FEBFF00'));
dbms_lob.writeappend(v_lob,30,hextoraw('D7A3F1F4EA7E94839CF6EE7B7E7F87BD2F7C7E3D7FFD7400E073F8E3DFD3'));
dbms_lob.writeappend(v_lob,30,hextoraw('F0A31EFEDDBF3E6A3E7F0EBCD049F6C502D893FCFA77FF00EBD1FE3E9DEA'));
dbms_lob.writeappend(v_lob,30,hextoraw('1C9E87BFF2A77E1FAD003FB7A73FD3FF00AF499FF26933FF00EAFA7E3EB4'));
dbms_lob.writeappend(v_lob,30,hextoraw('1233EA7A7F9FD28F4B85B61E0F38FF0039ED4A0FF2FC7FCFD2A2CF1800F4'));
dbms_lob.writeappend(v_lob,30,hextoraw('E9DB9FAD3813DBF4A064D9A901FC7FA5419FA7F9CF34E04F7FF3FD6908D7'));
dbms_lob.writeappend(v_lob,30,hextoraw('2FC75EB9FF001C54258E7EBC019FF3FE4D465BF0CFF2E7B7E74C67FAF5FE'));
dbms_lob.writeappend(v_lob,30,hextoraw('BC679AD998243D9FF1EDEDD3E99A88BFD3B9E3FF00D75197E3FC78E9F854'));
dbms_lob.writeappend(v_lob,30,hextoraw('2CDF88CE78FF003EF52348959BF01FE7DAA0693FCF39FF001A6173F97A7F'));
dbms_lob.writeappend(v_lob,30,hextoraw('9F4A80BE49E31E952FE45A5F80E67CD4791D739FD7B629BBB8EFD477FCA9'));
dbms_lob.writeappend(v_lob,30,hextoraw('A4F5FC282BFC8909CF23823D3D29BF97A53370E7A528E39FCBF5C6281A17'));
dbms_lob.writeappend(v_lob,30,hextoraw('D4E783F4FF003F8D267A7F9FC7147BE4FF009FAD379F6FF3FA74A103F21C'));
dbms_lob.writeappend(v_lob,30,hextoraw('0FF9FF00238A767F0F6FC6A1271D7F218FF0C5286E7FC8FC69EFE8224EDC'));
dbms_lob.writeappend(v_lob,30,hextoraw('F07FA75A064771C1FF0038FCA981BAFBFF009F4A7EE3FE7FFD74ADA07E62'));
dbms_lob.writeappend(v_lob,30,hextoraw('E4E38EFF00D7EB4B939C13FF00EBC8FF000A667FCFE54BCFA7E7FE41A062'));
dbms_lob.writeappend(v_lob,30,hextoraw('827B63FCF4A50C7D3FFD5DA9B93EF467B73E9CF5A03F02438F4CFF009F4C'));
dbms_lob.writeappend(v_lob,30,hextoraw('D2161FCBAD3723A0FAD28F7E71F97F851EA02F6C839FFF005500F4FA7BD3'));
dbms_lob.writeappend(v_lob,30,hextoraw('49CF51C0FF003C9A5C641E3DF9FF003EF407DC3F273D47F871D3F2A33939'));
dbms_lob.writeappend(v_lob,30,hextoraw('E3A7F2A8C8FCC0FF00EB67F2A4071EA0FBD21FDC4BC8F4EBDBFCFE14A1B9'));
dbms_lob.writeappend(v_lob,30,hextoraw('F5FF003F5F4A8F9E4E7FCFFF00AC537AFD7F3F4EF40AC4C48CF3FF00D7A4'));
dbms_lob.writeappend(v_lob,30,hextoraw('07F11FE7BD44391EE3F0A7F5C60E3B73EBFE140FA8FE4FFF005BE99A43C7'));
dbms_lob.writeappend(v_lob,30,hextoraw('E3FE473C5371F5EBFE7DFD6973C8EA7FFD5DE8FEAC4FCC5FA7F9EFCD3812'));
dbms_lob.writeappend(v_lob,30,hextoraw('41E00EF8FD6998C7AF4EF4849EFC60FE1F4A7F31F444991DF3DA93381EBD'));
dbms_lob.writeappend(v_lob,30,hextoraw('3A9A67AFF9E98F4A5E7AE7A7B7F4A5FA8598EDC0E0138FAE3F9D2F18EBDF'));
dbms_lob.writeappend(v_lob,30,hextoraw('B8A8FF00023FCFF9F4A518E718E4FD3F2A7F21F98FCF3C74F6FF003DA97A'));
dbms_lob.writeappend(v_lob,30,hextoraw('F6EDF8F634D3F8F1D6933F81CF6E3DFF00AD217E43FA75FD71FAF341C75C'));
dbms_lob.writeappend(v_lob,30,hextoraw('0EBF971F9D3727D7F98E9406EFC74E3A7E94C3524E3D31FA7E1498E7A639'));
dbms_lob.writeappend(v_lob,30,hextoraw('FF003EFD29B9CFE1F87AE07B527E27F0A431E78C73F4FE7499E074E9FA9F'));
dbms_lob.writeappend(v_lob,30,hextoraw('D4D3327D7FCF7A507F1E29885CE7B7F3A53FE7B7F4A6E7AF1EBD7A73F866'));
dbms_lob.writeappend(v_lob,30,hextoraw('8CFD7F1F73F5A41BF71727D79CFEB4EDC79E9E9DF3FF00EAA60C753F5EBF'));
dbms_lob.writeappend(v_lob,30,hextoraw('41CFD2949A7D8071EBD3DF8FF39A4E3BF5FC3B5373D78F7E2937738F4FCB'));
dbms_lob.writeappend(v_lob,30,hextoraw('A76A43EDD07FBE6933EDDB1FA53738A33EDD73F9F1EDD8500BF524C8007E'));
dbms_lob.writeappend(v_lob,30,hextoraw('5F4F6FCA8CE4FE9F9E3B8A67F9E7FCF5A53D318047BF342FC407E073F5F7'));
dbms_lob.writeappend(v_lob,30,hextoraw('A38FCBD7FF00AD4DCF1FAF7FE4283DFAF5FD7A7FF5E80F41DDF8FA739EF4'));
dbms_lob.writeappend(v_lob,30,hextoraw('7D7FCFBF5A6FF9EDEDF8500E3F0F4FF3ED407A741DFA7340E7B8FE7F97F9'));
dbms_lob.writeappend(v_lob,30,hextoraw('34CDC334673F97E1430F41C4E7AFF9EBF8521EB4DE7AFD0F3FD28FC3DFF4'));
dbms_lob.writeappend(v_lob,30,hextoraw('A005C7F8D3811EFEB4CCFF009CFB934B9FAFE79A603F3F8FFF005FDE8E3F'));
dbms_lob.writeappend(v_lob,30,hextoraw('3F5A667BD0323FAE3D681120E9CE3FCFEB4BEBEFCFF9E2A3CFEB4B9F7ED8'));
dbms_lob.writeappend(v_lob,30,hextoraw('E7FAD161A24CFF009FCE9A4F3FE18F5EF4CCFA8F4A3F5C7F5A05FD761791'));
dbms_lob.writeappend(v_lob,30,hextoraw('4993EDE9CFE3F5A3F03C631F4F4CE28FCFD3B8A00507AE4FE5E9CD2E7B7E'));
dbms_lob.writeappend(v_lob,30,hextoraw('1DBF5CD3738E79CFD3FCFF009146EEDFE7FCF140EC3F81F4FF003CD19C54'));
dbms_lob.writeappend(v_lob,30,hextoraw('65B3FE78CF4F6A424FBF3FE47E945844DBB8FF003FA52EE3FE7A7F3A841F'));
dbms_lob.writeappend(v_lob,30,hextoraw('F3C77A703FAFD2819FFFD9FFE108DD687474703A2F2F6E732E61646F6265'));
dbms_lob.writeappend(v_lob,30,hextoraw('2E636F6D2F7861702F312E302F003C3F787061636B657420626567696E3D'));
dbms_lob.writeappend(v_lob,30,hextoraw('27EFBBBF272069643D2757354D304D7043656869487A7265537A4E54637A'));
dbms_lob.writeappend(v_lob,30,hextoraw('6B633964273F3E0D0A3C783A786D706D65746120786D6C6E733A783D2261'));
dbms_lob.writeappend(v_lob,30,hextoraw('646F62653A6E733A6D6574612F223E3C7264663A52444620786D6C6E733A'));
dbms_lob.writeappend(v_lob,30,hextoraw('7264663D22687474703A2F2F7777772E77332E6F72672F313939392F3032'));
dbms_lob.writeappend(v_lob,30,hextoraw('2F32322D7264662D73796E7461782D6E7323222F3E3C2F783A786D706D65'));
dbms_lob.writeappend(v_lob,30,hextoraw('74613E0D0A20202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('2020202020202020202020202020200A2020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('20202020202020202020202020202020202020202020202020200A202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020200A20202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('2020202020202020202020202020202020200A2020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('20202020202020202020202020202020202020202020202020202020200A'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020200A20202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('2020202020202020202020202020202020202020200A2020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('20200A202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020200A20202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('2020202020202020202020202020202020202020202020200A2020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('20202020200A202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020200A20202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('2020202020202020202020202020202020202020202020202020200A2020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('20202020202020200A202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020200A20202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('0A2020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('20202020202020202020200A202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020200A20202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('2020200A2020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('20202020202020202020202020200A202020202020202020202020202020'));
dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020203C3F787061636B657420656E643D277727'));
dbms_lob.writeappend(v_lob,30,hextoraw('3F3EFFDB0043000201010201010202020202020202030503030303030604'));
dbms_lob.writeappend(v_lob,30,hextoraw('040305070607070706070708090B0908080A0807070A0D0A0A0B0C0C0C0C'));
dbms_lob.writeappend(v_lob,30,hextoraw('07090E0F0D0C0E0B0C0C0CFFDB004301020202030303060303060C080708'));
dbms_lob.writeappend(v_lob,30,hextoraw('0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C'));
dbms_lob.writeappend(v_lob,30,hextoraw('0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0CFFC0001108004B006003'));
dbms_lob.writeappend(v_lob,30,hextoraw('012200021101031101FFC4001F0000010501010101010100000000000000'));
dbms_lob.writeappend(v_lob,30,hextoraw('000102030405060708090A0BFFC400B51000020103030204030505040400'));
dbms_lob.writeappend(v_lob,30,hextoraw('00017D01020300041105122131410613516107227114328191A1082342B1'));
dbms_lob.writeappend(v_lob,30,hextoraw('C11552D1F02433627282090A161718191A25262728292A3435363738393A'));
dbms_lob.writeappend(v_lob,30,hextoraw('434445464748494A535455565758595A636465666768696A737475767778'));
dbms_lob.writeappend(v_lob,30,hextoraw('797A838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3'));
dbms_lob.writeappend(v_lob,30,hextoraw('B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE1E2E3E4E5'));
dbms_lob.writeappend(v_lob,30,hextoraw('E6E7E8E9EAF1F2F3F4F5F6F7F8F9FAFFC4001F0100030101010101010101'));
dbms_lob.writeappend(v_lob,30,hextoraw('010000000000000102030405060708090A0BFFC400B51100020102040403'));
dbms_lob.writeappend(v_lob,30,hextoraw('040705040400010277000102031104052131061241510761711322328108'));
dbms_lob.writeappend(v_lob,30,hextoraw('144291A1B1C109233352F0156272D10A162434E125F11718191A26272829'));
dbms_lob.writeappend(v_lob,30,hextoraw('2A35363738393A434445464748494A535455565758595A63646566676869'));
dbms_lob.writeappend(v_lob,30,hextoraw('6A737475767778797A82838485868788898A92939495969798999AA2A3A4'));
dbms_lob.writeappend(v_lob,30,hextoraw('A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7'));
dbms_lob.writeappend(v_lob,30,hextoraw('D8D9DAE2E3E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFFDA000C0301000211'));
dbms_lob.writeappend(v_lob,30,hextoraw('0311003F00FDFCA28A2800A19828C938CD617C42F88FA3FC30F0E5C6A9AC'));
dbms_lob.writeappend(v_lob,30,hextoraw('DF5B58DA5BAEE6795F680338F73D48000049240009201F867F68AFDBE75D'));
dbms_lob.writeappend(v_lob,30,hextoraw('F8ADA65FE9FE1EBCBEF0CE912AFF00A334236DDEA8A71866911B312310C8'));
dbms_lob.writeappend(v_lob,30,hextoraw('51486523E666C951E6E3B34A3865696B2EDFE7DBFAD0F6F27C8713984ED4'));
dbms_lob.writeappend(v_lob,30,hextoraw('95A3D64F65FE6FFA763EC2F891FB4E7843E1A5E4F6577AB5BCFA9C113CCD'));
dbms_lob.writeappend(v_lob,30,hextoraw('676EC1E5013390C4908A720801981278009E2BC3BE20FEDFBAACBA34577E'));
dbms_lob.writeappend(v_lob,30,hextoraw('1FD0A445B9B992D156F4B36D9232415D916189C6C3912630E39C8207C8DE'));
dbms_lob.writeappend(v_lob,30,hextoraw('1BD6AFBC4BA868F1DE6A125BFF0063A8B786F164904E1718508F9246D5E0'));
dbms_lob.writeappend(v_lob,30,hextoraw('04000009E4B3357A0F84A3D32C2CAD7ECF6A84C84B1B895DA5918293F337'));
dbms_lob.writeappend(v_lob,30,hextoraw('015541C0381F292324D7CAE233CC455D9F2AECBFCF7FCBD0FD0F09C1D82C'));
dbms_lob.writeappend(v_lob,30,hextoraw('324EA2737E7B7C92FF00827A0DDFED17F11FC45A45CDE15D6219E56FDD43'));
dbms_lob.writeappend(v_lob,30,hextoraw('6914EA91292B863B9D9F6E3710325BE56E704628F8ABF6AAF14786FC54D6'));
dbms_lob.writeappend(v_lob,30,hextoraw('76571E284B2663F669AE6498CD7499C07C314DA080480501518079C9ACB8'));
dbms_lob.writeappend(v_lob,30,hextoraw('67998462DEF2E2368147987CD66C12704139F9874E3A6719F7D117F75359'));
dbms_lob.writeappend(v_lob,30,hextoraw('B43753BBDB484C691CB724A4B26D3B14210C3249503A125BA7AF12C6CEFF'));
dbms_lob.writeappend(v_lob,30,hextoraw('0016FE67A8F2FC3476A51B2E96FEAE77DA37EDA1E21D36D5EE74FBF875BD'));
dbms_lob.writeappend(v_lob,30,hextoraw('334D8C1BE7D4E252C0E46E5492258CB15E0EED84618704E2BD93E127ED79'));
dbms_lob.writeappend(v_lob,30,hextoraw('E1DF893710D8DEC73E83AACCC6348AE41304CC06711CC06D271CE0E0E08C'));
dbms_lob.writeappend(v_lob,30,hextoraw('807207C2FA8453585C1996065825972E238DCA33839C67038E1480D9230B'));
dbms_lob.writeappend(v_lob,30,hextoraw('D0D775E14D623F11ACF14D6B6A6E2E65F2BEC4D84B68946E62C58B021C36'));
dbms_lob.writeappend(v_lob,30,hextoraw('08272F939053095DD85CEEAC27CB297C9EBFD7C8F2B31E16C1D5A6E508F2'));
dbms_lob.writeappend(v_lob,30,hextoraw('BEEB4FBFA3F9F4EA8FD06A2BE7AFD9EBE395D784F55B1F0B6BF792DE69D7'));
dbms_lob.writeappend(v_lob,30,hextoraw('A5A1D2F509D8192DE45603ECB330E09C3028C42965E8BF2B88FE85AFB2C2'));
dbms_lob.writeappend(v_lob,30,hextoraw('E2A35E1CD1FEBFAFEB5BA3F30CC301530957D9CF5ECFBAFEB75FA6A1591E'));
dbms_lob.writeappend(v_lob,30,hextoraw('3CF1AD97C3CF08DFEB37ECC2DAC2232155E5E520708BEE4F1CF1DC90326B'));
dbms_lob.writeappend(v_lob,30,hextoraw('5EBE1DFF0082B1FED016FA7C1178392F1A211C3992154244F3C81725DBF8'));
dbms_lob.writeappend(v_lob,30,hextoraw('56285870325CDD27646CE598E2FEAF41D45BECBD7FAD4E8C932D78EC5C70'));
dbms_lob.writeappend(v_lob,30,hextoraw('FD377E9FD69F33E7BFDACBF6A7D47F684F13DC4F25E5C268915CE6D6D036'));
dbms_lob.writeappend(v_lob,30,hextoraw('14955237851CE7EF05C8C80C7BB313C0E8B78F74AD949218F69290B1E5D7'));
dbms_lob.writeappend(v_lob,30,hextoraw('04961C73C641C1EFEB9AE2EFBC4B6D69AADC431CB79710A0CCB7516D324A'));
dbms_lob.writeappend(v_lob,30,hextoraw('001B8201C282401F302700743907534ADFAADE401C057836AE1312ACBD0E'));
dbms_lob.writeappend(v_lob,30,hextoraw('E63CEF624E33C703D863F36AB5A739372EA7EF386C253A14952A6AC9743A'));
dbms_lob.writeappend(v_lob,30,hextoraw('5D73C5F69A7EABA05B48B7310769EF9A3F33648C9198D0B05C83901C7B28'));
dbms_lob.writeappend(v_lob,30,hextoraw('273C1E7D5FC21F13EDA1F0E1BB817CF795A2468A390C4223264AC8E495C9'));
dbms_lob.writeappend(v_lob,30,hextoraw('2B850178247523AF9FF8ABE17DCEB5E1D97598EC6EEED748B8124D2B4219'));
dbms_lob.writeappend(v_lob,30,hextoraw('92075058A025496C46A576963C630464D6CF82E68B4CF224C16D42689ADD'));
dbms_lob.writeappend(v_lob,30,hextoraw('14CACA2E90A0F9272CA188DC49046DC165CE14BA9D16966DD8E7A8D4AE97'));
dbms_lob.writeappend(v_lob,30,hextoraw('43B1D3FE30C9AC59DD2452D859EA0CA51F64A5FCBE48DCD9FBC49C600007'));
dbms_lob.writeappend(v_lob,30,hextoraw('70A31CDBB7D63C8B6171A99B9D4EE046EC640556256DC806DC9C9C2976ED'));
dbms_lob.writeappend(v_lob,30,hextoraw('C84E0E4EDE32CFC3326ABA44DF68B1856FE63948661C26700F1D9C672460'));
dbms_lob.writeappend(v_lob,30,hextoraw('11EBC1AEEFC13F0B67B1D52E61D6B5078E4D3034735A6CF359522DAEC46D'));
dbms_lob.writeappend(v_lob,30,hextoraw('620991988DA73900F002F39C13A92B2FC4CEA385357FCB7FF31924F3DE5E'));
dbms_lob.writeappend(v_lob,30,hextoraw('4AD768F3095D48D8495F9D432103A1521B703D483CE7A57B2FC2BF859A7E'));
dbms_lob.writeappend(v_lob,30,hextoraw('ABA7C578419CA286DCA84796DDF8240C90C467FDAC8E82BCDEEEFF00C35E'));
dbms_lob.writeappend(v_lob,30,hextoraw('20D5DC5B699721EC8085963947D9AD860821550120333E4B6402C01DD57B'));
dbms_lob.writeappend(v_lob,30,hextoraw('52F8F3224F6525922C17D6A9BE4915373DCE0E46E4C0C125893C007271DA'));
dbms_lob.writeappend(v_lob,30,hextoraw('A2A462AA377BFF005FD6E7362235AAD2E4A5EEBEFDBFAF2FC8FA0FC75F0B'));
dbms_lob.writeappend(v_lob,30,hextoraw('B4BF18FC37BA1688F61AC2C4AD14CDB336F72BCC2CEA09C912615941F996'));
dbms_lob.writeappend(v_lob,30,hextoraw('49141C357A2FECDFF125BE28FC25D37519998DE460DBDC863960EA7009E9'));
dbms_lob.writeappend(v_lob,30,hextoraw('925769CE39CF1C60D7C931FED29AC8D1D91AF6D526742CF15BF9AAEEB8C8'));
dbms_lob.writeappend(v_lob,30,hextoraw('624FCB82080A1581CFF0E3AFAB7FC1393C4AD7F1F8DAC002B126A1F6D541'));
dbms_lob.writeappend(v_lob,30,hextoraw('9D91992499182E7A0262CE3D49AFABC8F177AB18256BA6BF55F97E2CF85C'));
dbms_lob.writeappend(v_lob,30,hextoraw('F328AB4B0139D697338C935F3D1AFCBEE47D375F921FB6678D2D7C73FB44'));
dbms_lob.writeappend(v_lob,30,hextoraw('F8D9F56170D1C3A95F5A43B06E111B7BB5B7DC46E1D63808E3FBCBC127E5'));
dbms_lob.writeappend(v_lob,30,hextoraw('FD6FAFC8DF8C3F0B6FFC55FB4D7C4FD2E0F2FF00B4749F166A32953288D8'));
dbms_lob.writeappend(v_lob,30,hextoraw('C57128BB4232400765D260920673923048DF89E7CB4A127B26C5C0118BC4'));
dbms_lob.writeappend(v_lob,30,hextoraw('D56DEA92FBAFAFE3639CF87FF0FB4CF8ADA9AE93A2787EF27D5AFED9E1B7'));
dbms_lob.writeappend(v_lob,30,hextoraw('F3031FB3DCEE8C8723710C02ACA0602FCAEB9E5493ED5E3FF867E19F827A'));
dbms_lob.writeappend(v_lob,30,hextoraw('9BD8DB2E8E3528ADA64090B9B88AD66172E6271941C18157707DCC37E064'));
dbms_lob.writeappend(v_lob,30,hextoraw('216367C37FD8FF00B257806FF5292E639FC4379094B316FBD5D572B924B3'));
dbms_lob.writeappend(v_lob,30,hextoraw('0033824ED19E073C73F37F8B7C792F8B5AE2E4CA22BA7C24D2C87E6049C3'));
dbms_lob.writeappend(v_lob,30,hextoraw('3124F385C74C73C71C13F1D1AEE4B6563F478D39D6AB7526A0BF17FE4BA7'));
dbms_lob.writeappend(v_lob,30,hextoraw('7773D2BC4FF142E3C55A8CD045ABAC16934ABF68C5C2AC68855D56224F44'));
dbms_lob.writeappend(v_lob,30,hextoraw('039240DB939EB8038683C756969AB7973CE96AF6AE4412A92AAEC5B695C8'));
dbms_lob.writeappend(v_lob,30,hextoraw('C9439E8C4B06C2F038238DBAB989E16B58C048E6C8B5328F284C57250820'));
dbms_lob.writeappend(v_lob,30,hextoraw('32B3104B7538DDD873581A86A936B72B6936F66DFF0012B563347B7323A9'));
dbms_lob.writeappend(v_lob,30,hextoraw('CEDE002581CE37638C28270C28852E66DCCE9924972D3D8FA0B4BF8953EB'));
dbms_lob.writeappend(v_lob,30,hextoraw('3791E9D13C1742104CD1DC6124B6507717E3821490C36E490C542824668E'));
dbms_lob.writeappend(v_lob,30,hextoraw('99F186C7FB4A7BEB14D42510BBEDF3E611C2AC49C49D15B9CA12BBF71DA0'));
dbms_lob.writeappend(v_lob,30,hextoraw('9601486F14F85FF17A44B65B78CDCC97B62AD1B32B942E5483B53610ECC0'));
dbms_lob.writeappend(v_lob,30,hextoraw('2B3609CFCD803B56778C7C617AF241A90962B9B295413776EAA77A973CB1'));
dbms_lob.writeappend(v_lob,30,hextoraw('C72FD179E30173D79DD249EA95CC950E6D75B7DDFF0004F75B0F8B9225A5'));
dbms_lob.writeappend(v_lob,30,hextoraw('D5BDBDECE86ED5619E54453F28C02A3006C1C1FB8392476CE62D43C7EAB7'));
dbms_lob.writeappend(v_lob,30,hextoraw('C64B7926BCB81F31B824484923A0527D7DCF51E99AE374BF15785EF749F0'));
dbms_lob.writeappend(v_lob,30,hextoraw('94093E82350D562B986FD6F6FAE6DACAD6601BC896E591F7AA8C8388D110'));
dbms_lob.writeappend(v_lob,30,hextoraw('E5016625CAD5D27E21786A5BCB8B6315A5BDBDC5AB4D14F7B7D3C4B06C9D'));
dbms_lob.writeappend(v_lob,30,hextoraw('CBEE29D6E0C2A111182AEE60DB777065E19DD31C64B5B2B7F56FD3EED8F4'));
dbms_lob.writeappend(v_lob,30,hextoraw('9F0B78C24D6EEE779EE0C935D4821089C386070B95EE43311C9047E383F6'));
dbms_lob.writeappend(v_lob,30,hextoraw('4FFC128EDCEAFE19F1EF885548B4BFD6BFB3ED4E490E2D94990A93C10259'));
dbms_lob.writeappend(v_lob,30,hextoraw('A442471BA361D54D7E6AB7C5197C3FA12BD9C0D7BA9DD49FD9DA5C1FEA9E'));
dbms_lob.writeappend(v_lob,30,hextoraw('EEEE53B235C8E7976F998F201CE4718FD74FD833E1B5B7C10FD94BC1FA04'));
dbms_lob.writeappend(v_lob,30,hextoraw('6DE67D9ECCCAF201FF001F324B23CD2CFF00F6DA69259BFEDA8E074AFA2E'));
dbms_lob.writeappend(v_lob,30,hextoraw('1DC3B759CFB2FF00807C5F1B6214305ECD7DA697DDAFF91EB53EB2A8A412'));
dbms_lob.writeappend(v_lob,30,hextoraw('A31D79AFCA3FF82BFDEDFF00ECA7FB6DE83F126DB11F85FE26D843617F33'));
dbms_lob.writeappend(v_lob,30,hextoraw('80D0C77F68422EEECA7CB963219BB3B11C46C57F42F56F88D142AC3CD1CF'));
dbms_lob.writeappend(v_lob,30,hextoraw('6CF35F39FEDDDE0CF0DFED65F00F5BF047885E38A2BC5F36C6F5E3129D3A'));
dbms_lob.writeappend(v_lob,30,hextoraw('ED4111CE14FDE5F98ABAE46F8DDD72320D7D7E65952C561DD36AFD7FAFD3'));
dbms_lob.writeappend(v_lob,30,hextoraw('CEC7E799166D2C063235D6DB3F47FF0006CCFCF8F8C7F1E6F3C6F1452C97'));
dbms_lob.writeappend(v_lob,30,hextoraw('CD2ACC1A2851DF044CE7A609E1B737D30A793D6B83D47C7314314B058CC6'));
dbms_lob.writeappend(v_lob,30,hextoraw('EA48E105E59395120639209E830140EFBB0578E2BE7AF17F8B7C47FB2678'));
dbms_lob.writeappend(v_lob,30,hextoraw('FEFF00C21E39B1696D34A9157CF911AED628BFE59B37199A061FEAEE1391'));
dbms_lob.writeappend(v_lob,30,hextoraw('C2B0593217A6D33E22E97AE68F3DE41AEC114C90B340860FB45BDE858E67'));
dbms_lob.writeappend(v_lob,30,hextoraw('62B708C7E663E5C4A8D1B2B6E62D22E369F80965AE87BAD688FDA2966B4F'));
dbms_lob.writeappend(v_lob,30,hextoraw('11052A2D773D1ADBE234176AD63712CE6DAE23F2E58F2106ECF0C49033F3'));
dbms_lob.writeappend(v_lob,30,hextoraw('630C7A120E462B2353F1D5CE81AA40BAB94D51748BB48239828124B6928E'));
dbms_lob.writeappend(v_lob,30,hextoraw('E0F2A46EC907A3478AF255F1FDB5F49B166480797BA588FC8EC0F27721EA'));
dbms_lob.writeappend(v_lob,30,hextoraw('BDB8F7ACBF14F8F1B58BAB38A37B696511C76ED34523C8F246ADB90BAB70'));
dbms_lob.writeappend(v_lob,30,hextoraw('3E560BD79080D5C70AF9ACC978D8F2F327A9ED7E23BF9BC2DE258E4134C9'));
dbms_lob.writeappend(v_lob,30,hextoraw('1DE43E745710E3E59621C918E7046D201E78AE9EC3E20BE9B3CB770A5AC9'));
dbms_lob.writeappend(v_lob,30,hextoraw('05C44B2DEDBCA8A844722F322F42CA1C90186EDB8C30C1E7E7F97C717179'));
dbms_lob.writeappend(v_lob,30,hextoraw('6B15BDCDC450ADAFEF6232C80095768270C4E3E56C823AFCA2B4347F8952'));
dbms_lob.writeappend(v_lob,30,hextoraw('EB4D0DAD9DFC57335A6442810CBE6A3120C6B956CF6F97904120D635306D'));
dbms_lob.writeappend(v_lob,30,hextoraw('ABB3A29E60B9ACBAEC7B06B3A943733CCFA6B456930512B5AAB79D194202'));
dbms_lob.writeappend(v_lob,30,hextoraw('996265E4C618ED6563B90B739186AA96BE24861370F7176B1456D1F9B3DC'));
dbms_lob.writeappend(v_lob,30,hextoraw('CA4ECB753DCFFB5C703AF3DB935E6FAA7ED03E19F857712F9D2DA6917F02'));
dbms_lob.writeappend(v_lob,30,hextoraw('CDE6D9E9CCB757103C8A559618F3E5DAA9EE1DC952D9083016B0BE143788'));
dbms_lob.writeappend(v_lob,30,hextoraw('7F6BBF12DBC70C56DE12F04D8C804D70A8CF6C1828C94573BAE273C75380'));
dbms_lob.writeappend(v_lob,30,hextoraw('48C955C0ADB0B9655AD24927633C5E6F87C3C1BAB25F23ED6FF82737C3F5'));
dbms_lob.writeappend(v_lob,30,hextoraw('FDA5BE3D5AEAF710CF6DE13F06A29B99DB00C71B8398C13FF2DEE30C800E'));
dbms_lob.writeappend(v_lob,30,hextoraw('6389A56207CB8FD79B0F8C30CCA8231145181B52341848D40C0503B00000'));
dbms_lob.writeappend(v_lob,30,hextoraw('3E95F9BBFB3FF8C342F847E03D37C35E1B816C347D3FE6C6FDD35D4A40DF'));
dbms_lob.writeappend(v_lob,30,hextoraw('71337F1CAF81963D000A005000F61D0FE3A062AA676248E9E666BF43CAF2'));
dbms_lob.writeappend(v_lob,30,hextoraw('C86169DB793DCFC6F88B39A998E239DAB463A25FAFAB3A3F157C7073BC09'));
dbms_lob.writeappend(v_lob,30,hextoraw('9CE38C67A73F9D7937C41F8D85E3954CEC3AE46735C5F8A35098C8CA6424'));
dbms_lob.writeappend(v_lob,30,hextoraw('1F61EA6BCD3C6DA8CEECEA65620577CAA347974A8A6EC711FB59C5A0FC6D'));
dbms_lob.writeappend(v_lob,30,hextoraw('D18596BB62D3C968C4D9DE42E62BAB3246098DFAE0F746CA377078AFCF5F'));
dbms_lob.writeappend(v_lob,30,hextoraw('891F003C47F0CB5392E7C33A94D7106EDF9B3222727FDBB66CC64E3BA1C1'));
dbms_lob.writeappend(v_lob,30,hextoraw('F415F7278D58CE0EFF00981EBE9D2BC77C676B182E420076E7F5AF371108'));
dbms_lob.writeappend(v_lob,30,hextoraw('CF56B5FEB73D7C3549D35683B7F5F81F27DC7C75D7F47885AEB5A66997B2'));
dbms_lob.writeappend(v_lob,30,hextoraw('A11F35C4325ACA707B8E573C7F0E07B54D6BFB4CC71A047F0E40C9B76E13'));
dbms_lob.writeappend(v_lob,30,hextoraw('55744C63A00071CF3F9FAD7B36BBC9743F320C8DADF30FD6B9EB8D36D448'));
dbms_lob.writeappend(v_lob,30,hextoraw('5BEC969B89EBE427F8579FFD9F4E4F6FCD7E47A71CEB131D39BF27F9A679'));
dbms_lob.writeappend(v_lob,30,hextoraw('EBFED1D35CC4B158785B4247CE13CE692E4AF39E02ECE73EE7BFAD4A2F7E'));
dbms_lob.writeappend(v_lob,30,hextoraw('23FC495649EE6EACECE6C06558D2C2065F42B1A82E3EBB8D7A14370F66FB'));
dbms_lob.writeappend(v_lob,30,hextoraw('61DB0A9EC8A17F956A6904CB3067258939E4D10C1528F4FEBE6454CDF113'));
dbms_lob.writeappend(v_lob,30,hextoraw('D1C9FE4BEE564735F0D7F671B48AE23975590EA920E440B98EDC7D40C16F'));
dbms_lob.writeappend(v_lob,30,hextoraw('C71F4AFA8BE1C5ACD670DBA1D91C508DB1C68BB12351D0003000F615C478'));
dbms_lob.writeappend(v_lob,30,hextoraw('421464505462BD1FC2E48298E376335E9D1A5182D0F26B579D4DD9EB5E12'));
dbms_lob.writeappend(v_lob,30,hextoraw('F1249610A032313803B1E6BBAD1FC7F244A18B1181918EB5E45A3B18BEE9'));
dbms_lob.writeappend(v_lob,24,hextoraw('20053F4EA2BA2B1B8768D89624838AEA4F439796FB9FFFD9'));
update my_images set blobimage = v_lob where id = 1;
commit;
end;
/



Encode_Blob_as_Clob


This function isn't needed within the context of the SDSEMAIL package, but is used in some of the earlier examples that indicate direct UTL_SMTP usage.


CREATE OR REPLACE FUNCTION encode_blob_as_clob(p_blob IN BLOB)
    RETURN CLOB
IS
    v_len      INTEGER;
    v_index    INTEGER;
    v_chunk    RAW(32767);
    v_buffer   VARCHAR2(32767);
    v_clob     CLOB;
BEGIN
    v_len    := DBMS_LOB.getlength(p_blob);
    v_index  := 1;

    DBMS_LOB.createtemporary(v_clob, TRUE);

    WHILE v_index <= v_len
    LOOP
        v_chunk   := DBMS_LOB.SUBSTR(p_blob, 57, v_index);
        v_index   := v_index + 57;

        v_buffer  := UTL_RAW.cast_to_varchar2(UTL_ENCODE.base64_encode(v_chunk));

        DBMS_LOB.writeappend(v_clob, LENGTH(v_buffer), v_buffer);
    END LOOP;

    RETURN v_clob;
END;



Thank you for reading.

Questions and comments are welcome, as always.

14
Comment
Author:sdstuber
  • 4
  • 2
  • 2
  • +3
11 Comments

Expert Comment

by:tgoodley
Hi.
I thought I've give the sdsemail package a try. Unfortunately it fails to compile.
It cannot find INSTR_ENC or UTL_SMTP.close_connection.

I'm on Oracle 10g 10.2.0.5.0

Shall I just change to UTL_SMTP.quit?

Thanks,
Trevor.
0
LVL 74

Author Comment

by:sdstuber
tgoodley,  

thank you for reading and thanks even more for pointing out my omission.  
instr_enc was an external function I had available for my own testing, but I've now included it within the package for others to use.

Also I changed the close_connection call to quit,  close_connection is only for 11g and higher and had previously been quit in older versions of the package.   I'm not really sure why I changed it as quit is more appropriate anyway.  

So, thanks again, and I hope the updated version above works better for you.
0

Expert Comment

by:g_currier
Greetings,

In the context of the UTL_SMTP methods (which I use quite often for specific, small reporting administrative reporting tasks), how or in what way can I use the email package to also include a graphic?  I realize it's a bit off-topic but I am finding more and more that my users want to see a quick, one-off graphic of table stats (like load time durations or load volumes, over time).  Is this possible using Oracle itself (I don't think so, but one can never be sure, given the complexity of the Oracle RDBMS)?  For the moment, I am stuck running a query from within MS Excel and then building a chart based on the query results.  Is there another way that can be sent via email?  

I've been toying with embedded HTML, but the mail client is limited to HTML 4.01, which is missing some of the niceties used to display simple charts...
1
Big Business Goals? Which KPIs Will Help You

The most successful MSPs rely on metrics – known as key performance indicators (KPIs) – for making informed decisions that help their businesses thrive, rather than just survive. This eBook provides an overview of the most important KPIs used by top MSPs.

LVL 74

Author Comment

by:sdstuber
Not off topic at all, in fact the examples above include sending an image as part of the email.

Exact same code would be used to send an excel file, provided you can get the excel data loaded into a blob.
0

Expert Comment

by:g_currier
thanks!  If you know of anything good for me to read concerning embedded charts and such, would you mind pointing me in the right direction?
0

Expert Comment

by:Kjell Forsberg
Hi,
I'm using Send_mail procedure to send e-mail from Oracle and in works find, but...
I can't get the national characters åäö to get trough.

Send_mail is placed in sys schema and Sign_paket in user schema.

I send this text in the mail: 'Du kan spåra försändelsen här:'
And it looks like this in the received mail: Du kan sp?ra forsandelsen har:

I've tried different kind of encoding and charset, but nothing helps.

Please, any suggestion?

Regards
Kjell Forsberg
SIGN_PAKET.sql
Send_Mail_Text_Proc.sql
0
LVL 74

Author Comment

by:sdstuber
You can't use utl_smtp.write_data to send character sets with more than 7bit characters.

You will need to convert your data to RAW and then use write_raw_data as documented in the PL/SQL Packages and Types Reference

http://docs.oracle.com/cd/E11882_01/appdev.112/e40758/u_smtp.htm#ARPLS71528
0

Expert Comment

by:Kjell Forsberg
Hi,
I realized this and solved it in a work around.
Text/html and åäö as &aring;&auml;&ouml;

Problem solved.
0

Expert Comment

by:Susanne Klier
Hi there,
thanks for the detailed explanations above - they helped me a whole lot !
But: I cannot get the plain text displayed in my emails. I tried your examples for multipart with 2 attachments and with 1 attachment (Subject: test subject above). And in both I see an empty mail contents where there should be the text "This is a multi-part message in MIME format." for example.
I am sending from oracle 12.1.0.2 and tried different clients for mail and different mail servers for sending.
Any idea what could be the issue here ?
Thanks a lot in advance,
Susanne
0

Expert Comment

by:Tracy Grygiel
Great article - very clear and concise.  I hope this isn't a stupid question, but how does Oracle prevent someone from "spoofing" another email address.  That is, someone can use my email address in the ":p_from" part of the package and send a message on my behalf (without permission).  Is there away around this?  

Kindly,
t
0
LVL 74

Author Comment

by:sdstuber
There is no way to prevent that, but if the recipient looks at the email header they can see where it really came from,  unless the creator also knows how to spoof an SMTP server.

It's essentially the same as any other smtp client.  If I know how to spoof with something like Thunderbird, then I could do it with Oracle too.
If I can't do it with some other tool, then I can't do it with Oracle either.

Oracle doesn't make it any easier or harder.
2

Featured Post

Introduction to R

R is considered the predominant language for data scientist and statisticians. Learn how to use R for your own data science projects.

Join & Write a Comment

This video shows syntax for various backup options while discussing how the different basic backup types work.  It explains how to take full backups, incremental level 0 backups, incremental level 1 backups in both differential and cumulative mode a…
This video shows how to configure and send email from and Oracle database using both UTL_SMTP and UTL_MAIL, as well as comparing UTL_SMTP to a manual SMTP conversation with a mail server.

Keep in touch with Experts Exchange

Tech news and trends delivered to your inbox every month