yii\base\ErrorException Object ( [message:protected] => mkdir(): Permission denied [string:Exception:private] => [code:protected] => 2 [file:protected] => /mnt/data/litportal.ru/trunk/managers/BookManager.php [line:protected] => 57 [trace:Exception:private] => Array ( [0] => Array ( [function] => handleError [class] => yii\base\ErrorHandler [type] => -> [args] => Array ( [0] => 2 [1] => mkdir(): Permission denied [2] => /mnt/data/litportal.ru/trunk/managers/BookManager.php [3] => 57 [4] => Array ( [book] => app\models\Book Object ( [_attributes:yii\db\BaseActiveRecord:private] => Array ( [id] => 653268 [external_uid] => 76ce38b2-ff55-11e6-9c73-0cc47a1952f2 [external_id] => 23145891 [external_id_type] => 1 [is_deleted] => 0 [is_active] => 1 [author_id] => 6322 [genre_id] => 5214 [user_id] => [title_ru] => A History of Pendennis. Volume 1. His fortunes and misfortunes, his friends and his greatest enemy [alias] => a-history-of-pendennis-volume-1-his-fortunes-and-misfortunes-his-friends-and-his-greatest-enemy [description] => [lang] => en [year] => 2017 [views_cnt] => 55 [has_trial] => 4 [avatar] => 61/28/32/bc/f3/03/3a/f1/1fc7accdbeef6fc0.jpg [created_at] => 1499372776 [updated_at] => 1581791116 [rating] => 0 [type] => txt [hot] => 0 [new_book_id] => 0 [comments_cnt] => 0 [pub_date] => 2017-03-23 [write_date] => 2017-03-23 ) [_oldAttributes:yii\db\BaseActiveRecord:private] => Array ( [id] => 653268 [external_uid] => 76ce38b2-ff55-11e6-9c73-0cc47a1952f2 [external_id] => 23145891 [external_id_type] => 1 [is_deleted] => 0 [is_active] => 1 [author_id] => 6322 [genre_id] => 5214 [user_id] => [title_ru] => A History of Pendennis. Volume 1. His fortunes and misfortunes, his friends and his greatest enemy [alias] => a-history-of-pendennis-volume-1-his-fortunes-and-misfortunes-his-friends-and-his-greatest-enemy [description] => [lang] => en [year] => 2017 [views_cnt] => 55 [has_trial] => 4 [avatar] => 61/28/32/bc/f3/03/3a/f1/1fc7accdbeef6fc0.jpg [created_at] => 1499372776 [updated_at] => 1581791116 [rating] => 0 [type] => txt [hot] => 0 [new_book_id] => 0 [comments_cnt] => 0 [pub_date] => 2017-03-23 [write_date] => 2017-03-23 ) [_related:yii\db\BaseActiveRecord:private] => Array ( [author] => app\models\Author Object ( [_attributes:yii\db\BaseActiveRecord:private] => Array ( [id] => 6322 [first_name] => Уильям [last_name] => Теккерей [patronymic_name] => Мейкпис [alias] => uilyam-meykpis-tekkerey [litres_unique_id] => 9acf5542-2a93-102a-9ac3-800cba805322 [views_cnt] => 2455 [status] => 1 [created_at] => 1208569508 [books_updated_at] => 1585344338 [books_cnt] => 30 [external_id] => 0 [photo] => 0 [external_alias] => uilyam-meykpis-tekkerey [comments_cnt] => 0 ) [_oldAttributes:yii\db\BaseActiveRecord:private] => Array ( [id] => 6322 [first_name] => Уильям [last_name] => Теккерей [patronymic_name] => Мейкпис [alias] => uilyam-meykpis-tekkerey [litres_unique_id] => 9acf5542-2a93-102a-9ac3-800cba805322 [views_cnt] => 2455 [status] => 1 [created_at] => 1208569508 [books_updated_at] => 1585344338 [books_cnt] => 30 [external_id] => 0 [photo] => 0 [external_alias] => uilyam-meykpis-tekkerey [comments_cnt] => 0 ) [_related:yii\db\BaseActiveRecord:private] => Array ( ) [_relationsDependencies:yii\db\BaseActiveRecord:private] => Array ( ) [_errors:yii\base\Model:private] => [_validators:yii\base\Model:private] => [_scenario:yii\base\Model:private] => default [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => Array ( ) ) ) [_relationsDependencies:yii\db\BaseActiveRecord:private] => Array ( ) [_errors:yii\base\Model:private] => [_validators:yii\base\Model:private] => [_scenario:yii\base\Model:private] => default [_events:yii\base\Component:private] => Array ( [beforeInsert] => Array ( [0] => Array ( [0] => Array ( [0] => yii\behaviors\AttributeBehavior Object ( [attributes] => Array ( [beforeInsert] => Array ( [0] => created_at ) ) [value] => Closure Object ( [this] => app\models\Book Object *RECURSION* ) [skipUpdateOnClean] => 1 [preserveNonEmptyValues] => [owner] => app\models\Book Object *RECURSION* ) [1] => evaluateAttributes ) [1] => ) [1] => Array ( [0] => Array ( [0] => yii\behaviors\AttributeBehavior Object ( [attributes] => Array ( [beforeInsert] => Array ( [0] => updated_at ) [beforeUpdate] => updated_at ) [value] => 1586173679 [skipUpdateOnClean] => 1 [preserveNonEmptyValues] => [owner] => app\models\Book Object *RECURSION* ) [1] => evaluateAttributes ) [1] => ) ) [beforeUpdate] => Array ( [0] => Array ( [0] => Array ( [0] => yii\behaviors\AttributeBehavior Object ( [attributes] => Array ( [beforeInsert] => Array ( [0] => updated_at ) [beforeUpdate] => updated_at ) [value] => 1586173679 [skipUpdateOnClean] => 1 [preserveNonEmptyValues] => [owner] => app\models\Book Object *RECURSION* ) [1] => evaluateAttributes ) [1] => ) ) ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => Array ( [created_at] => yii\behaviors\AttributeBehavior Object ( [attributes] => Array ( [beforeInsert] => Array ( [0] => created_at ) ) [value] => Closure Object ( [this] => app\models\Book Object *RECURSION* ) [skipUpdateOnClean] => 1 [preserveNonEmptyValues] => [owner] => app\models\Book Object *RECURSION* ) [updated_at] => yii\behaviors\AttributeBehavior Object ( [attributes] => Array ( [beforeInsert] => Array ( [0] => updated_at ) [beforeUpdate] => updated_at ) [value] => 1586173679 [skipUpdateOnClean] => 1 [preserveNonEmptyValues] => [owner] => app\models\Book Object *RECURSION* ) ) ) [bookFileObj] => app\models\BookFile Object ( [_attributes:yii\db\BaseActiveRecord:private] => Array ( [id] => 1401644 [book_id] => 653268 [type] => txt [size] => 248109 [local_path] => 027b/5575/48af/4e04/c54832636da0ce3a.txt [external_file_id] => 23145891 [status] => 1 ) [_oldAttributes:yii\db\BaseActiveRecord:private] => Array ( [id] => 1401644 [book_id] => 653268 [type] => txt [size] => 248109 [local_path] => 027b/5575/48af/4e04/c54832636da0ce3a.txt [external_file_id] => 23145891 [status] => 1 ) [_related:yii\db\BaseActiveRecord:private] => Array ( ) [_relationsDependencies:yii\db\BaseActiveRecord:private] => Array ( ) [_errors:yii\base\Model:private] => [_validators:yii\base\Model:private] => [_scenario:yii\base\Model:private] => default [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => Array ( ) ) [cookie] => [pathInfo] => Array ( [path] => 107b/6c00/e406/bb51 [file] => 65d81c613ef2950a ) [localPath] => [bookFile] => A History of Pendennis. Volume 1. His fortunes and misfortunes, his friends and his greatest enemy William Thackeray Thackeray William Makepeace A History of Pendennis, Volume 1 His fortunes and misfortunes, his friends and his greatest enemy TO DR. JOHN ELLIOTSON My Dear Doctor, Thirteen months ago, when it seemed likely that this story had come to a close, a kind friend brought you to my bedside, whence, in all probability, I never should have risen but for your constant watchfulness and skill. I like to recall your great goodness and kindness (as well as many acts of others, showing quite a surprising friendship and sympathy) at that time, when kindness and friendship were most needed and welcome. And as you would take no other fee but thanks, let me record them here in behalf of me and mine, and subscribe myself,     Yours, most sincerely and gratefully,     W. M. THACKERAY. PREFACE If this kind of composition, of which the two years' product is now laid before the public, fail in art, as it constantly does and must, it at least has the advantage of a certain truth and honesty, which a work more elaborate might lose. In his constant communication with the reader, the writer is forced into frankness of expression, and to speak out his own mind and feelings as they urge him. Many a slip of the pen and the printer, many a word spoken in haste, he sees and would recall as he looks over his volume. It is a sort of confidential talk between writer and reader, which must often be dull, must often flag. In the course of his volubility, the perpetual speaker must of necessity lay bare his own weaknesses, vanities, peculiarities. And as we judge of a man's character, after long frequenting his society, not by one speech, or by one mood or opinion, or by one day's talk, but by the tenor of his general bearing and conversation; so of a writer, who delivers himself up to you perforce unreservedly, you say, Is he honest? Does he tell the truth in the main? Does he seem actuated by a desire to find out and speak it? Is he a quack, who shams sentiment, or mouths for effect? Does he seek popularity by clap-traps or other arts? I can no more ignore good fortune than any other chance which has befallen me. I have found many thousands more readers than I ever looked for. I have no right to say to these, You shall not find fault with my Art, or fall asleep over my pages; but I ask you to believe that this person writing strives to tell the truth. If there is not that, there is nothing. Perhaps the lovers of "excitement" may care to know, that this book began with a very precise plan, which was entirely put aside. Ladies and gentlemen, you were to have been treated, and the writer's and the publishers' pocket benefited, by the recital of the most active horrors. What more exciting than a ruffian (with many admirable virtues) in St. Giles's, visited constantly by a young lady from Belgravia? What more stirring than the contrasts of society? the mixture of slang and fashionable language? the escapes, the battles, the murders? Nay, up to nine o'clock this very morning, my poor friend, Colonel Altamont, was doomed to execution, and the author only relented when his victim was actually at the window. The "exciting" plan was laid aside (with a very honorable forbearance on the part of the publishers), because, on attempting it, I found that I failed, from want of experience of my subject; and never having been intimate with any convict in my life, and the manners of ruffians and jail-birds being quite unfamiliar to me, the idea of entering into competition with M. Eugène Sue was abandoned. To describe a real rascal, you must make him so horrible that he would be too hideous to show; and unless the painter paints him fairly, I hold he has no right to show him at all. Even the gentlemen of our age – this is an attempt to describe one of them, no better nor worse than most educated men – even these we can not show as they are, with the notorious foibles and selfishness of their lives and their education. Since the author of Tom Jones was buried, no writer of fiction among us has been permitted to depict, to his utmost power, a Man. We must drape him, and give him a certain conventional simper. Society will not tolerate the Natural in our Art. Many ladies have remonstrated, and subscribers left me, because, in the course of the story, I described a young man resisting and affected by temptation. My object was to say, that he had the passions to feel, and the manliness and generosity to overcome them. You will not hear – it is best to know it – what moves in the real world, what passes in society, in the clubs, colleges, newsrooms – what is the life and talk of your sons. A little more frankness than is customary has been attempted in this story; with no bad desire on the writer's part, it is hoped, and with no ill consequence to any reader. If truth is not always pleasant; at any rate truth is best, from whatever chair – from those whence graver writers or thinkers argue, as from that at which the story-teller sits as he concludes his labor, and bids his kind reader farewell. Kensington, Nov. 26th, 1850. PENDENNIS. CHAPTER I. SHOWS HOW FIRST LOVE MAY INTERRUPT BREAKFAST One fine morning in the full London season, Major Arthur Pendennis came over from his lodgings, according to his custom, to breakfast at a certain club in Pall Mall, of which he was a chief ornament. As he was one of the finest judges of wine in England, and a man of active, dominating, and inquiring spirit, he had been very properly chosen to be a member of the committee of this club and indeed was almost the manager of the institution; and the stewards and waiters bowed before him as reverentially as to a duke or a field-marshal. At a quarter past ten the major invariably made his appearance in the best blacked boots in all London, with a checked morning cravat that never was rumpled until dinner time, a buff waistcoat which bore the crown of his sovereign on the buttons, and linen so spotless that Mr. Brummel himself asked the name of his laundress, and would probably have employed her, had not misfortunes compelled that great man to fly the country. Pendennis's coat, his white gloves, his whiskers, his very cane, were perfect of their kind as specimens of the costume of a military man en retraite. At a distance, or seeing his back merely, you would have taken him to be not more than thirty years old: it was only by a nearer inspection that you saw the factitious nature of his rich brown hair, and that there were a few crows'-feet round about the somewhat faded eyes of his handsome mottled face. His nose was of the Wellington pattern. His hands and wristbands were beautifully long and white. On the latter he wore handsome gold buttons given to him by his Royal Highness the Duke of York, and on the others more than one elegant ring, the chief and largest of them being emblazoned with the famous arms of Pendennis. He always took possession of the same table in the same corner of the room, from which nobody ever now thought of ousting him. One or two mad wags and wild fellows had in former days, and in freak or bravado, endeavored twice or thrice to deprive him of this place; but there was a quiet dignity in the major's manner as he took his seat at the next table, and surveyed the interlopers, which rendered it impossible for any man to sit and breakfast under his eye; and that table – by the fire and yet near the window – became his own. His letters were laid out there in expectation of his arrival, and many was the young fellow about town who looked with wonder at the number of those notes, and at the seals and franks which they bore. If there was any question about etiquette, society, who was married to whom, of what age such and such a duke was, Pendennis was the man to whom every one appealed. Marchionesses used to drive up to the club, and leave notes for him or fetch him out. He was perfectly affable. The young men liked to walk with him in the Park or down Pall Mall; for he touched his hat to every body, and every other man he met was a lord. The major sate down at his accustomed table then, and while the waiters went to bring him his toast and his hot newspaper, he surveyed his letters through his gold double eye-glass. He carried it so gayly, you would hardly have known it was spectacles in disguise, and examined one pretty note after another, and laid them by in order. There were large solemn dinner cards, suggestive of three courses and heavy conversation; there were neat little confidential notes, conveying female entreaties; there was a note on thick official paper from the Marquis of Steyne, telling him to come to Richmond to a little party at the Star and Garter, and speak French, which language the major possessed very perfectly; and another from the Bishop of Ealing and Mrs. Trail, requesting the honor of Major Pendennis's company at Ealing House, all of which letters Pendennis read gracefully, and with the more satisfaction, because Glowry, the Scotch surgeon, breakfasting opposite to him, was looking on, and hating him for having so many invitations, which nobody ever sent to Glowry. These perused, the major took out his pocket-book to see on what days he was disengaged, and which of these many hospitable calls he could afford to accept or decline. He threw over Cutler, the East India Director, in Baker-street, in order to dine with Lord Steyne and the little French party at the Star and Garter – the bishop he accepted, because, though the dinner was slow he liked to dine with bishops – and so went through his list and disposed of them according to his fancy or interest. Then he took his breakfast and looked over the paper, the gazette, the births and deaths, and the fashionable intelligence, to see that his name was down among the guests at my Lord So-and-so's fête, and in the intervals of these occupations carried on cheerful conversation with his acquaintances about the room. Among the letters which formed Major Pendennis's budget for that morning there was only one unread, and which lay solitary and apart from all the fashionable London letters, with a country postmark and a homely seal. The superscription was in a pretty, delicate female hand, and though marked "Immediate" by the fair writer, with a strong dash of anxiety under the word, yet the major had, for reasons of his own, neglected up to the present moment his humble rural petitioner, who to be sure could hardly hope to get a hearing among so many grand folks who attended his levee. The fact was, this was a letter from a female relative of Pendennis, and while the grandees of her brother's acquaintance were received and got their interview, and drove off, as it were, the patient country letter remained for a long time waiting for an audience in the ante-chamber under the slop-basin. At last it came to be this letter's turn, and the major broke a seal with "Fairoaks" engraved upon it, and "Clavering St. Mary's" for a post-mark. It was a double letter, and the major commenced perusing the envelope before he attacked the inner epistle. "Is it a letter from another Jook?" growled Mr. Glowry, inwardly, "Pendennis would not be leaving that to the last, I'm thinking." "My dear Major Pendennis," the letter ran, "I beg and implore you to come to me immediately" – very likely, thought Pendennis, and Steyne's dinner to-day – "I am in the very greatest grief and perplexity. My dearest boy, who has been hitherto every thing the fondest mother could wish, is grieving me dreadfully. He has formed – I can hardly write it – a passion, an infatuation," – the major grinned – "for an actress who has been performing here. She is at least twelve years older than Arthur – who will not be eighteen till next February – and the wretched boy insists upon marrying her." "Hay! What's making Pendennis swear now?" – Mr. Glowry asked of himself, for rage and wonder were concentrated in the major's open mouth, as he read this astounding announcement. "Do, my dear friend," the grief-stricken lady went on, "come to me instantly on the receipt of this; and, as Arthur's guardian, entreat, command, the wretched child to give up this most deplorable resolution." And, after more entreaties to the above effect, the writer concluded by signing herself the major's "unhappy affectionate sister, Helen Pendennis." "Fairoaks, Tuesday" – the major concluded, reading the last words of the letter – "A d – d pretty business at Fairoaks, Tuesday; now let us see what the boy has to say;" and he took the other letter, which was written in a great floundering boy's hand, and sealed with the large signet of the Pendennises, even larger than the major's own, and with supplementary wax sputtered all round the seal, in token of the writer's tremulousness and agitation. The epistle ran thus — "Fairoaks, "Monday, Midnight. "My dear Uncle, "In informing you of my engagement with Miss Costigan, daughter of J. Chesterfield Costigan Esq., of Costiganstown, but, perhaps, better known to you under her professional name of Miss Fotheringay, of the Theaters Royal Drury Lane and Crow-street, and of the Norwich and Welsh Circuit, I am aware that I make an announcement which can not, according to the present prejudices of society, at least, be welcome to my family. My dearest mother, on whom, God knows I would wish to inflict no needless pain, is deeply moved and grieved, I am sorry to say, by the intelligence which I have this night conveyed to her. I beseech you, my dear sir, to come down and reason with her, and console her. Although obliged by poverty to earn an honorable maintenance by the exercise of her splendid talents, Miss Costigan's family is as ancient and noble as our own. When our ancestor, Ralph Pendennis, landed with Richard II. in Ireland, my Emily's forefathers were kings of that country. I have the information from Mr. Costigan, who, like yourself, is a military man. "It is in vain I have attempted to argue with my dear mother, and prove to her that a young lady of irreproachable character and lineage, endowed with the most splendid gifts of beauty and genius, who devotes herself to the exercise of one of the noblest professions, for the sacred purpose of maintaining her family, is a being whom we should all love and reverence, rather than avoid; – my poor mother has prejudices which it is impossible for my logic to overcome, and refuses to welcome to her arms one who is disposed to be her most affectionate daughter through life. "Although Miss Costigan is some years older than myself, that circumstance does not operate as a barrier to my affection, and I am sure will not influence its duration. A love like mine, sir, I feel, is contracted once and for ever. As I never had dreamed of love until I saw her – I feel now that I shall die without ever knowing another passion. It is the fate of my life. It was Miss C.'s own delicacy which suggested that the difference of age, which I never felt, might operate as a bar to our union. But having loved once, I should despise myself, and be unworthy of my name as a gentleman, if I hesitated to abide by my passion: if I did not give all where I felt all, and endow the woman who loves me fondly with my whole heart and my whole fortune. "I press for a speedy marriage with my Emily – for why, in truth, should it be delayed? A delay implies a doubt, which I cast from me as unworthy. It is impossible that my sentiments can change toward Emily – that at any age she can be any thing but the sole object of my love. Why, then, wait? I entreat you, my dear uncle, to come down and reconcile my dear mother to our union, and I address you as a man of the world, qui mores hominum multorum vidit et urbes, who will not feel any of the weak scruples and fears which agitate a lady who has scarcely ever left her village. "Pray come down to us immediately. I am quite confident that – apart from considerations of fortune – you will admire and approve of my Emily.     "Your affectionate Nephew.     "ARTHUR PENDENNIS, Jr." When the major had concluded the perusal of this letter, his countenance assumed an expression of such rage and horror that Glowry the surgeon-official, felt in his pocket for his lancet, which he always carried in his card-case, and thought his respected friend was going into a fit. The intelligence was indeed sufficient to agitate Pendennis. The head of the Pendennises going to marry an actress ten years his senior – a headstrong boy going to plunge into matrimony. "The mother has spoiled the young rascal," groaned the major inwardly, "with her cursed sentimentality and romantic rubbish. My nephew marry a tragedy queen! Gracious mercy, people will laugh at me so that I shall not dare show my head!" And he thought with an inexpressible pang that he must give up Lord Steyne's dinner at Richmond, and must lose his rest and pass the night in an abominable tight mail-coach, instead of taking pleasure, as he had promised himself, in some of the most agreeable and select society in England. And he must not only give up this but all other engagements for some time to come. Who knows how long the business might detain him. He quitted his breakfast table for the adjoining writing-room, and there ruefully wrote off refusals to the marquis, the earl, the bishop, and all his entertainers; and he ordered his servant to take places in the mail-coach for that evening, of course charging the sum which he disbursed for the seats to the account of the widow and the young scapegrace of whom he was guardian. CHAPTER II. A PEDIGREE AND OTHER FAMILY MATTERS Early in the Regency of George the Magnificent, there lived in a small town in the west of England, called Clavering, a gentleman whose name was Pendennis. There were those alive who remembered having seen his name painted on a board, which was surmounted by a gilt pestle and mortar over the door of a very humble little shop in the city of Bath, where Mr. Pendennis exercised the profession of apothecary and surgeon; and where he not only attended gentlemen in their sick-rooms, and ladies at the most interesting periods of their lives, but would condescend to sell a brown-paper plaster to a farmer's wife across the counter – or to vend tooth-brushes, hair-powder, and London perfumery. For these facts a few folks at Clavering could vouch, where people's memories were more tenacious, perhaps, than they are in a great bustling metropolis. And yet that little apothecary who sold a stray customer a pennyworth of salts, or a more fragrant cake of Windsor soap, was a gentleman of good education, and of as old a family as any in the whole county of Somerset. He had a Cornish pedigree which carried the Pendennises up to the time of the Druids – and who knows how much farther back? They had intermarried with the Normans at a very late period of their family existence, and they were related to all the great families of Wales and Britanny. Pendennis had had a piece of University education too, and might have pursued that career with great honor, but that in his second year at Cambridge his father died insolvent, and poor Pen was obliged to betake himself to the pestle and apron. He always detested the trade, and it was only necessity, and the offer of his mother's brother, a London apothecary of low family, into which Pendennis's father had demeaned himself by marrying, that forced John Pendennis into so odious a calling. He quickly after his apprenticeship parted from the coarse-minded practitioner, his relative, and set up for himself at Bath with his modest medical ensign. He had for some time a hard struggle with poverty; and it was all he could do to keep the shop and its gilt ornaments in decent repair, and his bed-ridden mother in comfort: but Lady Ribstone, happening to be passing to the Rooms with an intoxicated Irish chair man who bumped her ladyship up against Pen's very door-post, and drove his chair-pole through the handsomest pink-bottle in the surgeon's window, alighted screaming from her vehicle, and was accommodated with a chair in Mr. Pendennis's shop, where she was brought round with cinnamon and sal-volatile. Mr. Pendennis's manners were so uncommonly gentlemanlike and soothing, that her ladyship, the wife of Sir Pepin Ribstone, of Codlingbury, in the county of Somerset, Bart., appointed her preserver, as she called him, apothecary to her person and family, which was very large. Master Ribstone coming home for the Christmas holidays from Eton, over-ate himself and had a fever, in which Mr. Pendennis treated him with the greatest skill and tenderness. In a word, he got the good graces of the Codlingbury family, and from that day began to prosper. The good company of Bath patronized him, and among the ladies especially he was beloved and admired. First his humble little shop became a smart one; then he discarded the selling of tooth-brushes and perfumery, as unworthy of a gentleman of an ancient lineage; then he shut up the shop altogether, and only had a little surgery attended by a genteel young man: then he had a gig with a man to drive him; and, before her exit from this world, his poor old mother had the happiness of seeing from her bed-room window to which her chair was rolled, her beloved John step into a close carriage of his own, a one-horse carriage it is true, but with the arms of the family of Pendennis handsomely emblazoned on the panels. "What would Arthur say now?" she asked, speaking of a younger son of hers – "who never so much as once came to see my dearest Johnny through all the time of his poverty and struggles!" "Captain Pendennis is with his regiment in India, mother," Mr. Pendennis remarked, "and, if you please, I wish you would not call me Johnny before the young man – before Mr. Parkins." Presently the day came when she ceased to call her son by the name of Johnny, or by any other title of endearment or affection; and his house was very lonely without that kind though querulous voice. He had his night-bell altered and placed in the room in which the good old lady had grumbled for many a long year, and he slept in the great large bed there. He was upward of forty years old when these events befell; before the war was over; before George the Magnificent came to the throne; before this history indeed: but what is a gentleman without his pedigree? Pendennis, by this time, had his handsomely framed and glazed, and hanging up in his drawing-room between the pictures of Codlingbury House in Somersetshire, and St. Boniface's College, Cambridge, where he had passed the brief and happy days of his early manhood. As for the pedigree he had taken it out of a trunk, as Sterne's officer called for his sword, now that he was a gentleman and could show it. About the time of Mrs. Pendennis's demise, another of her son's patients likewise died at Bath; that virtuous woman, old Lady Pontypool, daughter of Reginald twelfth Earl of Bareacres, and by consequence great grand aunt to the present earl, and widow of John second Lord Pontypool, and likewise of the Reverend Jonas Wales, of the Armageddon Chapel, Clifton. For the last five years of her life her ladyship had been attended by Miss Helen Thistlewood, a very distant relative of the noble house of Bareacres, before mentioned, and daughter of Lieutenant R. Thistlewood, R. N., killed at the battle of Copenhagen. Under Lady Pontypool's roof Miss Thistlewood found a comfortable shelter, as far as boarding and lodging went, but suffered under such an infernal tyranny as only women can inflict on, or bear from, one another; the doctor, who paid his visits to my Lady Pontypool at least twice a day, could not but remark the angelical sweetness and kindness with which the young lady bore her elderly relative's insults; and it was, as they were going in the fourth mourning coach to attend her ladyship's venerated remains to Bath Abbey, where they now repose, that he looked at her sweet pale face, and resolved upon putting a certain question to her, the very nature of which made his pulse beat ninety, at least. He was older than she by more than twenty years, and at no time the most ardent of men. Perhaps he had had a love affair in early life which he had to strangle – perhaps all early love affairs ought to be strangled or drowned, like so many blind kittens: well, at three-and-forty he was a collected quiet little gentleman in black stockings, with a bald head, and a few days after the ceremony he called to see her, and, as he felt her pulse, he kept hold of her hand in his, and asked her where she was going to live now that the Pontypool family had come down upon the property, which was being nailed into boxes, and packed into hampers, and swaddled up with haybands, and buried in straw, and locked under three keys in green-baize plate-chests, and carted away under the eyes of poor Miss Helen – he asked her where she was going to live finally. Her eyes filled with tears, and she said she did not know. She had a little money. The old lady had left her a thousand pounds, indeed; and she would go into a boarding-house or into a school; in fine, she did not know where. Then Pendennis, looking into her pale face, and keeping hold of her cold little hand, asked her if she would come and live with him? He was old compared to – to so blooming a young lady as Miss Thistlewood (Pendennis was of the grave old complimentary school of gentlemen and apothecaries), but he was of good birth, and, he flattered himself, of good principles and temper. His prospects were good, and daily mending. He was alone in the world, and had need of a kind and constant companion, whom it would be the study of his life to make happy; in a word, he recited to her a little speech, which he had composed that morning in bed, and rehearsed and perfected in his carriage, as he was coming to wait upon the young lady. Perhaps if he had had an early love-passage, she too had one day hoped for a different lot than to be wedded to a little gentleman who rapped his teeth and smiled artificially, who was laboriously polite to the butler as he slid up stairs into the drawing-room, and profusely civil to the lady's-maid, who waited at the bed-room door; for whom her old patroness used to ring as for a servant, and who came with even more eagerness; who got up stories, as he sent in draughts, for his patient's amusement and his own profit: perhaps she would have chosen a different man – but she knew, on the other hand, how worthy Pendennis was, how prudent, how honorable; how good he had been to his mother, and constant in his care of her; and the upshot of this interview was, that she, blushing very much, made Pendennis an extremely low courtesy, and asked leave to – to consider his very kind proposal. They were married in the dull Bath season, which was the height of the season in London. And Pendennis having previously, through a professional friend, M.R.C.S., secured lodgings in Holles-street, Cavendish Square, took his wife thither in a chaise and pair; conducted her to the theaters, the Parks, and the Chapel Royal; showed her the folks going to a drawing-room, and, in a word, gave her all the pleasures of the town. He likewise left cards upon Lord Pontypool, upon the Right Honorable the Earl of Bareacres, and upon Sir Pepin and Lady Ribstone, his earliest and kindest patrons. Bareacres took no notice of the cards. Pontypool called, admired Mrs. Pendennis, and said Lady Pontypool would come and see her, which her ladyship did, per proxy of John her footman, who brought her card, and an invitation to a concert five weeks off. Pendennis was back in his little one-horse carriage, dispensing draughts and pills at that time: but the Ribstones asked him and Mrs. Pendennis to an entertainment, of which Mr. Pendennis bragged to the last day of his life. The secret ambition of Mr. Pendennis had always been to be a gentleman. It takes much time and careful saving for a provincial doctor, whose gains are not very large, to lay by enough money wherewith to purchase a house and land: but besides our friend's own frugality and prudence, fortune aided him considerably in his endeavor, and brought him to the point which he so panted to attain. He laid out some money very advantageously in the purchase of a house and small estate close upon the village of Clavering before mentioned. Words can not describe, nor did he himself ever care to confess to any one, his pride when he found himself a real landed proprietor, and could walk over acres of which he was the master. A lucky purchase which he had made of shares in a copper-mine added very considerably to his wealth, and he realized with great prudence while this mine was still at its full vogue. Finally, he sold his business, at Bath, to Mr. Parkins, for a handsome sum of ready money, and for an annuity to be paid to him during a certain number of years after he had forever retired from the handling of the mortar and pestle. Arthur Pendennis, his son, was eight years old at the time of this event, so that it is no wonder that the latter, who left Bath and the surgery so young, should forget the existence of such a place almost entirely, and that his father's hands had ever been dirtied by the compounding of odious pills, or the preparation of filthy plasters. The old man never spoke about the shop himself, never alluded to it; called in the medical practitioner of Clavering to attend his family when occasion arrived; sunk the black breeches and stockings altogether; attended market and sessions, and wore a bottle-green coat and brass buttons with drab gaiters, just as if he had been an English gentleman all his life. He used to stand at his lodge-gate, and see the coaches come in, and bow gravely to the guards and coachmen as they touched their hats and drove by. It was he who founded the Clavering Book Club; and set up the Samaritan Soup and Blanket Society. It was he who brought the mail, which used to run through Cacklefield before, away from that village and through Clavering. At church he was equally active as a vestryman and a worshiper. At market every Thursday, he went from pen to stall, looked at samples of oats, and munched corn, felt beasts, punched geese in the breast, and weighed them with a knowing air, and did business with the farmers at the Clavering Arms, as well as the oldest frequenter of that house of call. It was now his shame, as it formerly was his pride, to be called doctor, and those who wished to please him always gave him the title of squire. Heaven knows where they came from, but a whole range of Pendennis portraits presently hung round the doctor's oak dining-room; Lelys and Vandykes he vowed all the portraits to be, and when questioned as to the history of the originals, would vaguely say they were "ancestors of his." You could see by his wife's looks that she disbelieved in these genealogical legends, for she generally endeavored to turn the conversation when he commenced them. But his little boy believed them to their fullest extent, and Roger Pendennis of Agincourt, Arthur Pendennis of Crecy, General Pendennis of Blenheim and Oudenarde, were as real and actual beings for this young gentleman as – whom shall we say? – as Robinson Crusoe, or Peter Wilkins, or the Seven Champions of Christendom, whose histories were in his library. Pendennis's fortune, which, at the best, was not above eight hundred pounds a year, did not, with the best economy and management, permit of his living with the great folks of the county; but he had a decent comfortable society of the second-best sort. If they were not the roses, they lived near the roses, as it were, and had a good deal of the odor of genteel life. They had out their plate, and dined each other round in the moonlight nights twice a year, coming a dozen miles to these festivals; and besides the county, the Pendennises had the society of the town of Clavering, as much as, nay, more than they liked: for Mrs. Pybus was always poking about Helen's conservatories, and intercepting the operation of her soup-tickets and coal-clubs: Captain Glanders (H. P., 50th Dragoon Guards), was forever swaggering about the squire's stables and gardens, and endeavoring to enlist him in his quarrels with the vicar, with the postmaster, with the Reverend F. Wapshot of Clavering Grammar School, for overflogging his son, Anglesea Glanders – with all the village, in fine. And Pendennis and his wife often blessed themselves, that their house of Fairoaks was nearly a mile out of Clavering, or their premises would never have been free from the prying eyes and prattle of one or other of the male and female inhabitants there. Fairoaks lawn comes down to the little river Brawl, and on the other side were the plantations and woods (as much as were left of them) of Clavering Park, Sir Francis Clavering, Bart. The park was let out in pasture and fed down by sheep and cattle, when the Pendennises came first to live at Fairoaks. Shutters were up in the house; a splendid freestone palace, with great stairs, statues, and porticos, whereof you may see a picture in the "Beauties of England and Wales." Sir Richard Clavering, Sir Francis's grandfather, had commenced the ruin of the family by the building of this palace; his successor had achieved the ruin by living in it. The present Sir Francis was abroad somewhere; nor could any body be found rich enough to rent that enormous mansion, through the deserted rooms, moldy clanking halls, and dismal galleries of which, Arthur Pendennis many a time walked trembling when he was a boy. At sunset, from the lawn of Fairoaks, there was a pretty sight: it and the opposite park of Clavering were in the habit of putting on a rich golden tinge, which became them both wonderfully. The upper windows of the great house flamed so as to make your eyes wink; the little river ran off noisily westward, and was lost in a somber wood, behind which the towers of the old abbey church of Clavering (whereby that town is called Clavering St. Mary's to the present day) rose up in purple splendor. Little Arthur's figure and his mother's, cast long blue shadows over the grass; and he would repeat in a low voice (for a scene of great natural beauty always moved the boy, who inherited this sensibility from his mother) certain lines beginning, "These are thy glorious works, Parent of Good; Almighty! thine this universal frame," greatly to Mrs. Pendennis's delight. Such walks and conversation generally ended in a profusion of filial and maternal embraces; for to love and to pray were the main occupations of this dear woman's life; and I have often heard Pendennis say in his wild way, that he felt that he was sure of going to heaven, for his mother never could be happy there without him. As for John Pendennis, as the father of the family, and that sort of thing, every body had the greatest respect for him; and his orders were obeyed like those of the Medes and Persians. His hat was as well brushed, perhaps, as that of any man in this empire. His meals were served at the same minute every day, and wo to those who came late, as little Pen, a disorderly little rascal, sometimes did. Prayers were recited, his letters were read, his business dispatched, his stables and garden inspected, his hen-houses and kennel, his barn and pigstye visited, always at regular hours. After dinner he always had a nap with the Globe newspaper on his knee, and his yellow bandanna handkerchief on his face (Major Pendennis sent the yellow handkerchiefs from India, and his brother had helped in the purchase of his majority, so that they were good friends now). And so, as his dinner took place at six o'clock to a minute, and the sunset business alluded to may be supposed to have occurred at about half-past seven, it is probable that he did not much care for the view in front of his lawn windows, or take any share in the poetry and caresses which were taking place there. They seldom occurred in his presence. However frisky they were before, mother and child were hushed and quiet when Mr. Pendennis walked into the drawing room, his newspaper under his arm. And here, while little Pen, buried in a great chair, read all the books of which he could lay hold, the squire perused his own articles in the "Gardener's Gazette," or took a solemn hand at picquet with Mrs. Pendennis, or an occasional friend from the village. Pendennis usually took care that at least one of his grand dinners should take place when his brother, the major, who, on the return of his regiment from India and New South Wales, had sold out and gone upon half-pay, came to pay his biennial visit to Fairoaks. "My brother, Major Pendennis," was a constant theme of the retired doctor's conversation. All the family delighted in my brother the major. He was the link which bound them to the great world of London, and the fashion. He always brought down the last news of the nobility, and was in the constant habit of dining with lords and great folks. He spoke of such with soldier-like respect and decorum. He would say, "My Lord Bareacres has been good enough to invite me to Bareacres for the pheasant shooting," or, "My Lord Steyne is so kind as to wish for my presence at Stillbrook for the Easter holidays;" and you may be sure the whereabouts of my brother the major was carefully made known by worthy Mr. Pendennis to his friends at the Clavering reading-room, at justice-meetings, or at the county town. Their carriages would come from ten miles round to call upon Major Pendennis in his visits to Fairoaks; the fame of his fashion as a man about town was established throughout the county. There was a talk of his marrying Miss Hunkle, of Lilybank, old Hunkle the attorney's daughter, with at least fifteen hundred a year to her fortune: but my brother the major refused this negotiation, advantageous as it might seem to most persons. "As a bachelor," he said, "nobody cares how poor I am. I have the happiness to live with people who are so highly placed in the world, that a few hundreds or thousands a year more or less can make no difference in the estimation in which they are pleased to hold me. Miss Hunkle, though a most respectable lady, is not in possession of either the birth or the manners, which would entitle her to be received into the sphere in which I have the honor to move. I shall live and die an old bachelor, John: and your worthy friend, Miss Hunkle, I have no doubt, will find some more worthy object of her affection, than a worn-out old soldier on half-pay." Time showed the correctness of the surmise of the old man of the world; Miss Hunkle married a young French nobleman, and is now at this moment living at Lilybank, under the title of Baroness de Carambole, having been separated from her wild young scapegrace of a baron very shortly after their union. The major was a great favorite with almost all the little establishment of Fairoaks. He was as good-natured as he was well bred, and had a sincere liking and regard for his sister-in-law, whom he pronounced, and with perfect truth, to be as fine a lady as any in England, and an honor to the family. Indeed, Mrs. Pendennis's tranquil beauty, her natural sweetness and kindness, and that simplicity and dignity which a perfect purity and innocence are sure to bestow upon a handsome woman, rendered her quite worthy of her brother's praises. I think it is not national prejudice which makes me believe that a high-bred English lady is the most complete of all Heaven's subjects in this world. In whom else do you see so much grace and so much virtue; so much faith and so much tenderness; with such a perfect refinement and chastity? And by high-bred ladies I don't mean duchesses and countesses. Be they ever so high in station, they can be but ladies, and no more. But almost every man who lives in the world has the happiness, let us hope, of counting a few such persons among his circle of acquaintance – women in whose angelical natures, there is something awful as well as beautiful, to contemplate; at whose feet the wildest and fiercest of us must fall down and humble ourselves; – in admiration of that adorable purity which never seems to do or to think wrong. Arthur Pendennis had the good fortune to have a mother endowed with those happy qualities. During his childhood and youth, the boy thought of her as little less than an angel – as a supernatural being, all wisdom, love, and beauty. When her husband drove her into the county town, or to the assize balls or concerts there, he would step into the assembly with his wife on his arm, and look the great folks in the face, as much as to say, "Look at that, my lord; can any of you show me a woman like that?" She enraged some country ladies with three times her money, by a sort of desperate perfection which they found in her. Miss Pybus said she was cold and haughty; Miss Pierce, that she was too proud for her station; Mrs. Wapshot as a doctor of divinity's lady, would have the pas of her, who was only the wife of a medical practitioner. In the mean while, this lady moved through the world quite regardless of all the comments that were made in her praise or disfavor. She did not seem to know that she was admired or hated for being so perfect: but carried on calmly through life, saying her prayers, loving her family, helping her neighbors, and doing her duty. That even a woman should be faultless, however, is an arrangement not permitted by nature, which assigns to us mental defects, as it awards to us headaches, illnesses, or death; without which, the scheme of the world could not be carried on – nay, some of the best qualities of mankind could not be brought into exercise. As pain produces or elicits fortitude and endurance; difficulty, perseverance; poverty, industry and ingenuity; danger, courage and what not; so the very virtues, on the other hand, will generate some vices: and, in fine, Mrs. Pendennis had that vice which Miss Pybus and Miss Pierce discovered in her, namely, that of pride; which did not vest itself so much in her own person, as in that of her family. She spoke about Mr. Pendennis (a worthy little gentleman enough, but there are others as good as he) with an awful reverence, as if he had been the Pope of Rome on his throne, and she a cardinal kneeling at his feet and giving him incense. The major she held to be a sort of Bayard among majors: and as for her son, Arthur, she worshiped that youth with an ardor which the young scapegrace accepted almost as coolly as the statue of the saint in Saint Peter's receives the rapturous osculations which the faithful deliver on his toe. This unfortunate superstition and idol-worship of this good woman was the cause of a great deal of the misfortune which befell the young gentleman who is the hero of this history, and deserves therefore to be mentioned at the outset of his story. Arthur Pendennis's schoolfellows at the Greyfriars School state that, as a boy, he was in no ways remarkable either as a dunce or as a scholar. He did, in fact, just as much as was required of him, and no more. If he was distinguished for any thing it was for verse-writing; but was his enthusiasm ever so great, it stopped when he had composed the number of lines demanded by the regulations (unlike young Swettenham, for instance, who, with no more of poetry in his composition than Mr. Wakley, yet would bring up a hundred dreary hexameters to the master after a half-holiday; or young Fluxmore, who not only did his own verses, but all the fifth form's besides). He never read to improve himself out of school-hours, but, on the contrary, devoured all the novels, plays, and poetry, on which he could lay his hands. He never was flogged, but it was a wonder how he escaped the whipping-post. When he had money he spent it royally in tarts for himself and his friends; he has been known to disburse nine and sixpence out of ten shillings awarded to him in a single day. When he had no funds he went on tick. When he could get no credit he went without, and was almost as happy. He has been known to take a thrashing for a crony without saying a word; but a blow, ever so slight, from a friend, would make him roar. To fighting he was averse from his earliest youth, as indeed to physic, the Greek Grammar, or any other exertion, and would engage in none of them, except at the last extremity. He seldom, if ever, told lies, and never bullied little boys. Those masters or seniors who were kind to him, he loved with boyish ardor. And though the doctor, when he did not know his Horace, or could not construe his Greek play, said that that boy Pendennis was a disgrace to the school, a candidate for ruin in this world, and perdition in the next; a profligate who would most likely bring his venerable father to ruin and his mother to a dishonored grave, and the like – yet as the doctor made use of these compliments to most of the boys in the place (which has not turned out an unusual number of felons and pick-pockets), little Pen, at first uneasy and terrified by these charges, became gradually accustomed to hear them; and he has not, in fact, either murdered his parents, or committed any act worthy of transportation or hanging up to the present day. There were many of the upper boys, among the Cistercians with whom Pendennis was educated, who assumed all the privileges of men long before they quitted that seminary. Many of them, for example, smoked cigars – and some had already begun the practice of inebriation. One had fought a duel with an ensign in a marching regiment in consequence of a row at the theater – another actually kept a buggy and horse at a livery stable in Covent Garden, and might be seen driving any Sunday in Hyde Park with a groom with squared arms and armorial buttons by his side. Many of the seniors were in love, and showed each other in confidence poems addressed to, or letters and locks of hair received from, young ladies – but Pen, a modest and timid youth, rather envied these than imitated them as yet. He had not got beyond the theory as yet – the practice of life was all to come. And, by the way, ye tender mothers and sober fathers of Christian families, a prodigious thing that theory of life is as orally learned at a great public school. Why, if you could hear those boys of fourteen who blush before mothers and sneak off in silence in the presence of their daughters, talking among each other – it would be the woman's turn to blush then. Before he was twelve years old and while his mother fancied him an angel of candor, little Pen had heard talk enough to make him quite awfully wise upon certain points – and so, madam, has your pretty little rosy-cheeked son, who is coming home from school for the ensuing Christmas holidays. I don't say that the boy is lost, or that the innocence has left him which he had from "Heaven, which is our home," but that the shades of the prison-house are closing very fast over him, and that we are helping as much as possible to corrupt him. Well – Pen had just made his public appearance in a coat with a tail, or cauda-virilis, and was looking most anxiously in his little study-glass to see if his whiskers were growing, like those of more fortunate youths his companions; and, instead of the treble voice with which he used to speak and sing (for his singing voice was a very sweet one, and he used when little to be made to perform "Home, sweet Home," "My pretty Page," and a French song or two which his mother had taught him, and other ballads for the delectation of the senior boys), had suddenly plunged into a deep bass diversified by a squeak, which, when he was called upon to construe in school, set the master and scholars laughing – he was about sixteen years old, in a word, when he was suddenly called away from his academic studies. It was at the close of the forenoon school, and Pen had been unnoticed all the previous part of the morning till now, when the doctor put him on to construe in a Greek play. He did not know a word of it, though little Timmins, his form-fellow, was prompting him with all his might. Pen had made a sad blunder or two – when the awful chief broke out upon him. "Pendennis, sir," he said, "your idleness is incorrigible, and your stupidity beyond example. You are a disgrace to your school, and to your family, and I have no doubt will prove so in after-life to your country. If that vice, sir, which is described to us as the root of all evil, be really what moralists have represented (and I have no doubt of the correctness of their opinion), for what a prodigious quantity of future crime and wickedness are you, unhappy boy, laying the seed! Miserable trifler! A boy who construes δε and, instead of δε but, at sixteen years of age is guilty not merely of folly, and ignorance, and dullness inconceivable, but of crime, of deadly crime, of filial ingratitude, which I tremble to contemplate. A boy, sir, who does not learn his Greek play cheats the parent who spends money for his education. A boy who cheats his parent is not very far from robbing or forging upon his neighbor. A man who forges on his neighbor pays the penalty of his crime at the gallows. And it is not such a one that I pity (for he will be deservedly cut off); but his maddened and heart-broken parents, who are driven to a premature grave by his crimes, or, if they live, drag on a wretched and dishonored old age. Go on, sir, and I warn you that the very next mistake that you make shall subject you to the punishment of the rod. Who's that laughing? What ill-conditioned boy is there that dares to laugh?" shouted the doctor. Indeed, while the master was making this oration, there was a general titter behind him in the school-room. The orator had his back to the door of this ancient apartment, which was open, and a gentleman who was quite familiar with the place, for both Major Arthur and Mr. John Pendennis had been at the school, was asking the fifth form boy who sate by the door for Pendennis. The lad grinning pointed to the culprit against whom the doctor was pouring out the thunders of his just wrath – Major Pendennis could not help laughing. He remembered having stood under that very pillar where Pen the younger now stood, and having been assaulted by the doctor's predecessor, years and years ago. The intelligence was "passed round" that it was Pendennis's uncle in an instant, and a hundred young faces wondering and giggling, between terror and laughter, turned now to the new comer and then to the awful doctor. The major asked the fifth-form boy to carry his card up to the doctor, which the lad did with an arch look. Major Pendennis had written on the card, "I must take A. P. home; his father is very ill." As the doctor received the card, and stopped his harangue with rather a scared look, the laughter of the boys, half constrained until then, burst out in a general shout. "Silence!" roared out the doctor, stamping with his foot. Pen looked up and saw who was his deliverer; the major beckoned to him gravely with one of his white gloves, and tumbling down his books, Pen went across. The doctor took out his watch. It was two minutes to one. "We will take the Juvenal at afternoon school," he said, nodding to the major, and all the boys, understanding the signal, gathered up their books and poured out of the hall. Young Pen saw by his uncle's face that something had happened at home. "Is there any thing the matter with – my mother?" he said. He could hardly speak, though, for emotion, and the tears which were ready to start. "No," said the major, "but your father's very ill. Go and pack your trunk directly; I have got a post-chaise at the gate." Pen went off quickly to his boarding-house to do as his uncle bade him; and the doctor, now left alone in the school-room, came out to shake hands with his old schoolfellow. You would not have thought it was the same man. As Cinderella at a particular hour became, from a blazing and magnificent princess, quite an ordinary little maid in a gray petticoat, so, as the clock struck one, all the thundering majesty and awful wrath of the schoolmaster disappeared. "There is nothing serious, I hope," said the doctor. "It is a pity to take the boy away unless there is. He is a very good boy, rather idle and unenergetic, but he is a very honest, gentlemanlike little fellow, though I can't get him to construe as I wish. Won't you come in and have some luncheon? My wife will be very happy to see you." But Major Pendennis declined the luncheon. He said his brother was very ill, had had a fit the day before, and it was a great question if they should see him alive. "There's no other son, is there?" said the doctor. The major answered "No." "And there's a good eh – a good eh – property I believe?" asked the other, in an offhand way. "H'm – so so," said the major. Whereupon this colloquy came to an end. And Arthur Pendennis got into the post-chaise with his uncle never to come back to school any more. As the chaise drove through Clavering, the hostler standing whistling under the archway of the Clavering Arms, winked the postillion ominously, as much as to say all was over. The gardener's wife came and opened the lodge-gates, and let the travelers through, with a silent shake of the head. All the blinds were down at Fairoaks – the face of the old footman was as blank when he let them in. Arthur's face was white too, with terror more than with grief. Whatever of warmth and love the deceased man might have had, and he adored his wife and loved and admired his son with all his heart, he had shut them up within himself; nor had the boy been ever able to penetrate that frigid outward harrier. But Arthur had been his father's pride and glory through life, and his name the last which John Pendennis had tried to articulate while he lay with his wife's hand clasping his own cold and clammy palm, as the flickering spirit went out into the darkness of death, and life and the world passed away from him. The little girl, whose face had peered for a moment under the blinds as the chaise came up, opened the door from the stairs into the hall, and taking Arthur's hand silently as he stooped down to kiss her, led him up-stairs to his mother. Old John opened the drawing-room door for the major. The room was darkened, with the blinds down, and surrounded by all the gloomy pictures of the Pendennises. He drank a glass of wine. The bottle had been opened for the squire four days before. His hat was brushed, and laid on the hall table: his newspapers, and his letter bag, with John Pendennis, Esquire, Fairoaks, engraved upon the brass plate, were there in waiting. The doctor and the lawyer from Clavering, who had seen the chaise pass through, came up in a gig half an hour after the major's arrival, and entered by the back door. The former gave a detailed account of the seizure and demise of Mr. Pendennis, enlarged on his virtues and the estimation in which the neighborhood held him; on what a loss he would be to the magistrates' bench, the county hospital, &c. Mrs. Pendennis bore up wonderfully, he said, especially since Master Arthur's arrival. The lawyer staid and dined with Major Pendennis, and they talked business all the evening. The major was his brother's executor, and joint guardian to the boy with Mrs. Pendennis. Every thing was left unreservedly to her, except in case of a second marriage – an occasion which might offer itself in the case of so young and handsome a woman, Mr. Tatham gallantly said, when different provisions were enacted by the deceased. The major would of course take entire superintendence of every thing under this most impressive and melancholy occasion. Aware of this authority, Old John the footman, when he brought Major Pendennis the candle to go to bed, followed afterward with the plate-basket; and the next morning brought him the key of the hall clock – the squire always used to wind it up of a Thursday, John said. Mrs. Pendennis's maid brought him messages from her mistress. She confirmed the doctor's report, of the comfort which Master Arthur's arrival had caused to his mother. What passed between that lady and the boy is not of import. A vail should be thrown over those sacred emotions of love and grief. The maternal passion is a sacred mystery to me. What one sees symbolized in the Roman churches in the image of the Virgin Mother with a bosom bleeding with love, I think one may witness (and admire the Almighty bounty for) every day. I saw a Jewish lady, only yesterday, with a child at her knee, and from whose face toward the child there shone a sweetness so angelical, that it seemed to form a sort of glory round both. I protest I could have knelt before her too, and adored in her the Divine beneficence in endowing us with the maternal storgé, which began with our race and sanctifies the history of mankind. So it was with this, in a word, that Mrs. Pendennis comforted herself on the death of her husband, whom, however, she always reverenced as the best, the most upright, wise, high-minded, accomplished, and awful of men. If the women did not make idols of us, and if they saw us as we see each other, would life be bearable, or could society go on? Let a man pray that none of his womankind should form a just estimation of him. If your wife knew you as you are, neighbor, she would not grieve much about being your widow, and would let your grave-lamp go out very soon, or perhaps not even take the trouble to light it. Whereas Helen Pendennis put up the handsomest of memorials to her husband, and constantly renewed it with the most precious oil. As for Arthur Pendennis, after that awful shock which the sight of his dead father must have produced on him, and the pity and feeling which such an event no doubt occasioned, I am not sure that in the very moment of the grief, and as he embraced his mother and tenderly consoled her, and promised to love her forever, there was not springing up in his breast a feeling of secret triumph and exultation. He was the chief now and lord. He was Pendennis; and all round about him were his servants and handmaids. "You'll never send me away," little Laura said, tripping by him, and holding his hand. "You won't send me to school, will you, Arthur?" Arthur kissed her and patted her head. No, she shouldn't go to school. And as for going himself, that was quite out of the question. He had determined that that part of his life should not be renewed. In the midst of the general grief, and the corpse still lying above, he had leisure to conclude that he would have it all holidays for the future, that he wouldn't get up till he liked, or stand the bullying of the doctor any more, and had made a hundred of such day dreams and resolves for the future. How one's thoughts will travel! and how quickly our wishes beget them! When he, with Laura in his hand, went into the kitchen on his way to the dog-kennel, the fowl-houses, and his other favorite haunts, all the servants there assembled in great silence with their friends, and the laboring men and their wives, and Sally Potter who went with the post-bag to Clavering, and the baker's man from Clavering – all there assembled and drinking beer on the melancholy occasion – rose up on his entrance and bowed or courtesied to him. They never used to do so last holidays, he felt at once and with indescribable pleasure. The cook cried out, "O Lord," and whispered, "How Master Arthur do grow!" Thomas, the groom, in the act of drinking, put down the jug, alarmed before his master. Thomas's master felt the honor keenly. He went through and looked at the pointers. As Flora put her nose up to his waistcoat, and Ponto, yelling with pleasure hurtled at his chain, Pen patronized the dogs, and said, "Poo, Ponto, poo, Flora," in his most condescending manner. And then he went and looked at Laura's hens, and at the pigs, and at the orchard, and at the dairy; perhaps he blushed to think that it was only last holidays he had, in a manner, robbed the great apple-tree, and been scolded by the dairy-maid for taking cream. They buried John Pendennis, Esquire, "formerly an eminent medical practitioner at Bath, and subsequently an able magistrate, a benevolent landlord, and a benefactor to many charities and public institutions in this neighborhood and county," with one of the most handsome funerals that had been seen since Sir Roger Clavering was buried here, the clerk said, in the abbey church of Clavering St. Mary's. A fair marble slab, from which the above inscription is copied, was erected over the Fairoaks pew in the church. On it you may see the Pendennis coat of arms, and crest, an eagle looking toward the sun, with the motto "nec tenui pennâ," to the present day. Doctor Portman alluded to the deceased most handsomely and affectingly, "as our dear departed friend," in his sermon next Sunday; and Arthur Pendennis reigned in his stead. CHAPTER III. IN WHICH PENDENNIS APPEARS AS A VERY YOUNG MAN INDEED Arthur was about sixteen years old, we have said, when he began to reign; in person (for I see that the artist who is to illustrate this book, and who makes sad work of the likeness, will never be able to take my friend off), he had what his friends would call a dumpy, but his mamma styled a neat little figure. His hair was of a healthy brown color, which looks like gold in the sunshine, his face was round, rosy, freckled, and good-humored, his whiskers (when those facial ornaments for which he sighed so ardently were awarded to him by nature) were decidedly of a reddish hue; in fact, without being a beauty, he had such a frank, good-natured, kind face, and laughed so merrily at you out of his honest blue eyes, that no wonder Mrs. Pendennis thought him the pride of the whole county. Between the ages of sixteen and eighteen he rose from five feet six to five feet eight inches in height, at which altitude he paused. But his mother wondered at it. He was three inches taller than his father. Was it possible that any man could grow to be three inches taller than Mr. Pendennis? You may be certain he never went back to school; the discipline of the establishment did not suit him, and he liked being at home much better. The question of his return was debated, and his uncle was for his going back. The doctor wrote his opinion that it was most important for Arthur's success in after-life that he should know a Greek play thoroughly, but Pen adroitly managed to hint to his mother what a dangerous place Greyfriars was, and what sad wild fellows some of the chaps there were, and the timid soul, taking alarm at once, acceded to his desire to stay at home. Then Pen's uncle offered to use his influence with His Royal Highness the commander-in-chief, who was pleased to be very kind to him, and proposed to get Pen a commission in the Foot Guards. Pen's heart leaped at this: he had been to hear the band at St. James's play on a Sunday, when he went out to his uncle. He had seen Tom Ricketts, of the fourth form, who used to wear a jacket and trowsers so ludicrously tight, that the elder boys could not forbear using him in the quality of a butt or "cockshy" – he had seen this very Ricketts arrayed in crimson and gold, with an immense bear-skin cap on his head, staggering under the colors of the regiment. Tom had recognized him, and gave him a patronizing nod. Tom, a little wretch whom he had cut over the back with a hockey-stick last quarter – and there he was in the center of the square, rallying round the flag of his country, surrounded by bayonets, cross-belts, and scarlet, the band blowing trumpets and banging cymbals – talking familiarly to immense warriors with tufts to their chins and Waterloo medals. What would not Pen have given to wear such epaulettes and enter such a service? But Helen Pendennis, when this point was proposed to her by her son, put on a face full of terror and alarm. She said "she did not quarrel with others who thought differently, but that in her opinion a Christian had no right to make the army a profession. Mr. Pendennis never, never would have permitted his son to be a soldier. Finally, she should be very unhappy if he thought of it." Now, Pen would have as soon cut off his nose and ears as deliberately, and of aforethought malice, made his mother unhappy; and, as he was of such a generous disposition that he would give away any thing to any one, he instantly made a present of his visionary red coat and epaulettes and his ardor for military glory to his mother. She thought him the noblest creature in the world. But Major Pendennis, when the offer of the commission was acknowledged and refused, wrote back a curt and somewhat angry letter to the widow, and thought his nephew was rather a spooney. He was contented, however, when he saw the boy's performances out hunting at Christmas, when the major came down as usual to Fairoaks. Pen had a very good mare, and rode her with uncommon pluck and grace. He took his fences with great coolness, and yet with judgment, and without bravado. He wrote to the chaps at school about his top-boots, and his feats across country. He began to think seriously of a scarlet coat: and his mother must own that she thought it would become him remarkably well; though, of course, she passed hours of anguish during his absence, and daily expected to see him brought home on a shutter. With these amusements, in rather too great plenty, it must not be assumed that Pen neglected his studies altogether. He had a natural taste for reading every possible kind of book which did not fall into his school-course. It was only when they forced his head into the waters of knowledge that he refused to drink. He devoured all the books at home, from Inchbald's Theater to White's Farriery; he ransacked the neighboring book-cases. He found at Clavering an old cargo of French novels, which he read with all his might; and he would sit for hours perched upon the topmost bar of Doctor Portman's library steps, with a folio on his knees, whether it were Hackluyt's Travels, Hobbes's Leviathan, Augustini Opera, or Chaucer's Poems. He and the vicar were very good friends, and from his reverence, Pen learned that honest taste for port wine which distinguished him through life. And as for that dear, good woman, Mrs. Portman, who was not in the least jealous, though her doctor avowed himself in love with Mrs. Pendennis, whom he pronounced to be by far the finest lady in the county – all her grief was, as she looked up fondly at Pen perched on the book-ladder, that her daughter Minny was too old for him – as indeed she was; Miss Mira Portman being at that period only two years younger than Pen's mother, and weighing as much as Pen and Mrs. Pendennis together. Are these details insipid? Look back, good friend, at your own youth, and ask how was that? I like to think of a well-nurtured boy, brave and gentle, warm-hearted and loving, and looking the world in the face with kind, honest eyes. What bright colors it wore then, and how you enjoyed it! A man has not many years of such time. He does not know them while they are with him. It is only when they are passed long away that he remembers how dear and happy they were. In order to keep Mr. Pen from indulging in that idleness of which his friend the doctor of the Cistercians had prophesied such awful consequences, Mr. Smirke, Dr. Portman's curate, was engaged at a liberal salary, to walk or ride over from Clavering, and pass several hours daily with the young gentleman. Smirke was a man perfectly faultless at a tea-table, wore a curl on his fair forehead, and tied his neck-cloth with a melancholy grace. He was a decent scholar and mathematician, and taught Pen as much as the lad was ever disposed to learn, which was not much. For Pen had soon taken the measure of his tutor, who, when he came riding into the court-yard at Fairoaks on his pony, turned out his toes so absurdly, and left such a gap between his knees and the saddle, that it was impossible for any lad endowed with a sense of humor to respect such an equestrian. He nearly killed Smirke with terror by putting him on his mare, and taking him a ride over a common, where the county fox-hounds (then hunted by that stanch old sportsman, Mr. Hardhead, of Dumplingbeare) happened to meet. Mr. Smirke, on Pen's mare, Rebecca (she was named after Pen's favorite heroine, the daughter of Isaac of York), astounded the hounds as much as he disgusted the huntsman, laming one of the former by persisting in riding among the pack, and receiving a speech from the latter, more remarkable for energy of language, than any oration he had ever heard since he left the bargemen on the banks of Isis. Smirke confided to his pupil his poems both Latin and English; and presented to Mrs. Pendennis a volume of the latter, printed at Clapham, his native place. The two read the ancient poets together, and rattled through them at a pleasant rate, very different from that steady grubbing pace with which the Cistercians used to go over the classic ground, scenting out each word as they went, and digging up every root in the way. Pen never liked to halt, but made his tutor construe when he was at fault, and thus galloped through the Iliad and the Odyssey, the tragic play-writers, and the charming wicked Aristophanes (whom he vowed to be the greatest poet of all). But he went at such a pace that, though he certainly galloped through a considerable extent of the ancient country, he clean forgot it in after-life, and had only such a vague remembrance of his early classic course as a man has in the House of Commons, let us say, who still keeps up two or three quotations; or a reviewer who, just for decency's sake, hints at a little Greek. Our people are the most prosaic in the world, but the most faithful; and with curious reverence we keep up and transmit, from generation to generation, the superstition of what we call the education of a gentleman. Besides the ancient poets you may be sure Pen read the English with great gusto. Smirke sighed and shook his head sadly both about Byron and Moore. But Pen was a sworn fire-worshiper and a Corsair; he had them by heart, and used to take little Laura into the window, and say – "Zuleika, I am not thy brother," in tones so tragic that they caused the solemn little maid to open her great eyes still wider. She sat until the proper hour for retirement, sewing at Mrs. Pendennis's knee, and listening to Pen reading out to her of nights, without comprehending one word of what he read. He read Shakspeare to his mother (which she said she liked, but didn't), and Byron, and Pope, and his favorite Lalla Rookh, which pleased her indifferently. But as for Bishop Heber, and Mrs. Hemans above all, this lady used to melt right away, and be absorbed into her pocket-handkerchief, when Pen read those authors to her in his kind, boyish voice. The "Christian Year" was a book which appeared about that time. The son and the mother whispered it to each other with awe: faint, very faint, and seldom in after-life Pendennis heard that solemn church music: but he always loved the remembrance of it, and of the times when it struck on his heart, and he walked over the fields full of hope and void of doubt, as the church bells rang on Sunday morning. It was at this period of his existence, that Pen broke out in the poets' corner of the County Chronicle, with some verses with which he was perfectly well satisfied. His are the verses signed "NEP.," addressed "To a Tear;" "On the Anniversary of the Battle of Waterloo;" "To Madame Caradori singing at the Assize Meetings;" "On Saint Bartholomew's Day" (a tremendous denunciation of Popery, and a solemn warning to the people of England to rally against emancipating the Roman Catholics), &c., &c. – all which masterpieces Mrs. Pendennis no doubt keeps to this day, along with his first socks, the first cutting of his hair, his bottle, and other interesting relics of his infancy. He used to gallop Rebecca over the neighboring Dumpling Downs, or into the county town, which, if you please, we shall call Chatteries, spouting his own poems, and filled with quite a Byronic afflatus, as he thought. His genius at this time was of a decidedly gloomy cast. He brought his mother a tragedy, in which, though he killed sixteen people before the second act, it made her laugh so, that he thrust his masterpiece into the fire in a pet. He projected an epic poem in blank verse, "Cortez, or the Conqueror of Mexico, and the Inca's Daughter." He wrote part of "Seneca, or the Fatal Bath," and "Ariadne in Naxos;" classical pieces, with choruses and strophes and antistrophes, which sadly puzzled poor Mrs. Pendennis; and began a "History of the Jesuits," in which he lashed that order with tremendous severity, and warned his Protestant fellow-countrymen of their machinations. His loyalty did his mother's heart good to witness. He was a stanch, unflinching Church-and-King man in those days; and at the election, when Sir Giles Beanfield stood on the Blue interest, against Lord Trehawk, Lord Eyrie's son, a Whig and a friend of Popery, Arthur Pendennis, with an immense bow for himself, which his mother made, and with a blue ribbon for Rebecca, rode alongside of the Reverend Doctor Portman, on his gray mare Dowdy, and at the head of the Clavering voters, whom the doctor brought up to plump for the Protestant champion. On that day Pen made his first speech at the Blue Hotel; and also, it appears, for the first time in his life, took a little more wine than was good for him. Mercy! what a scene it was at Fairoaks, when he rode back at ever so much o'clock at night. What moving about of lanterns in the court-yard and stables, though the moon was shining out; what a gathering of servants, as Pen came home, clattering over the bridge and up the stable-yard, with half-a-score of the Clavering voters yelling after him the Blue song of the election. He wanted them all to come in and have some wine – some very good Madeira – some capital Madeira – John, go and get some Madeira – and there is no knowing what the farmers would have done, had not Madam Pendennis made her appearance in a white wrapper, with a candle, and scared those zealous Blues so by the sight of her pale, handsome face, that they touched their hats, and rode off. Besides these amusements and occupations in which Mr. Pen indulged, there was one which forms the main business and pleasure of youth, if the poets tell us aright, whom Pen was always studying; and this young fellow's heart was so ardent, and his imagination so eager, that it is not to be expected he should long escape the passion to which we allude, and which, ladies, you have rightly guessed to be that of Love. Pen sighed for it first in secret, and, like the love-sick swain in Ovid, opened his breast, and said – "Aura, veni." What generous youth is there that has not courted some such windy mistress in his time? Yes, Pen began to feel the necessity of a first love – of a consuming passion – of an object on which he could concentrate all those vague, floating fancies under which he sweetly suffered – of a young lady to whom he could really make verses, and whom he could set up and adore, in place of those unsubstantial Ianthes and Zuleikas to whom he addressed the outpourings of his gushing muse. He read his favorite poems over and over again, he called upon Alma Venus, the delight of gods and men, he translated Anacreon's odes, and picked out passages suitable to his complaint from Waller, Dryden, Prior, and the like. Smirke and he were never weary, in their interviews, of discoursing about love. The faithless tutor entertained him with sentimental conversations in place of lectures on algebra and Greek; for Smirke was in love too. Who could help it, being in daily intercourse with such a woman? Smirke was madly in love (as far as such a mild flame as Mr. Smirke's may be called madness) with Mrs. Pendennis. That honest lady, sitting down below stairs, teaching little Laura to play the piano, or devising flannel petticoats for the poor round about her, or otherwise busied with the calm routine of her modest and spotless Christian life, was little aware what storms were brewing in two bosoms up-stairs in the study – in Pen's, as he sat in his shooting jacket, with his elbows on the green study-table, and his hands clutching his curly brown hair, Homer under his nose – and in worthy Mr. Smirke's, with whom he was reading. Here they would talk about Helen and Andromache. "Andromache's like my mother," Pen used to avouch; "but I say, Smirke, by Jove I'd cut off my nose to see Helen: " and he would spout certain favorite lines which the reader will find in their proper place in the third book. He drew portraits of her – they are extant still – with straight noses and enormous eyes, and "Arthur Pendennis delineavit et pinxit" gallantly written underneath. As for Mr. Smirke he naturally preferred Andromache. And in consequence he was uncommonly kind to Pen. He gave him his Elzevir Horace, of which the boy was fond, and his little Greek Testament which his own mamma at Clapham had purchased and presented to him. He bought him a silver pencil case; and in the matter of learning let him do just as much or as little as ever he pleased. He always seemed to be on the point of unbosoming himself to Pen: nay, he confessed to the latter that he had a – an attachment, an ardently cherished attachment, about which Pendennis longed to hear, and said, "Tell us, old chap, is she handsome? has she got blue eyes or black?" But Doctor Portman's curate, heaving a gentle sigh, cast up his eyes to the ceiling, and begged Pen, faintly, to change the conversation. Poor Smirke! He invited Pen to dine at his lodgings over Madame Fribsby's, the milliner's, in Clavering, and once when it was raining, and Mrs. Pendennis, who had driven in her pony-chaise into Clavering with respect to some arrangements, about leaving off mourning probably, was prevailed upon to enter the curate's apartments, he sent out for poundcakes instantly. The sofa on which she sate became sacred to him from that day: and he kept flowers in the glass which she drank from ever after. As Mrs. Pendennis was never tired of hearing the praises of her son, we may be certain that this rogue of a tutor neglected no opportunity of conversing with her upon that subject. It might be a little tedious to him to hear the stories about Pen's generosity, about his bravery in fighting the big naughty boy, about his fun and jokes, about his prodigious skill in Latin, music, riding, &c. – but what price would he not pay to be in her company? and the widow, after these conversations, thought Mr. Smirke a very pleasing and well-informed man. As for her son she had not settled in her mind, whether he was to be Senior Wrangler and Archbishop of Canterbury, or Double First Class at Oxford, and Lord Chancellor. That all England did not possess his peer, was a fact about which there was, in her mind, no manner of question. A simple person of inexpensive habits, she began forthwith to save, and, perhaps, to be a little parsimonious, in favor of her boy. There were no entertainments, of course, at Fairoaks, during the year of her weeds. Nor, indeed, did the doctor's silver dish-covers, of which he was so proud, and which were flourished all over with the arms of the Pendennises, and surmounted with their crest, come out of the plate-chests again for long, long years. The household was diminished, and its expenses curtailed. There was a very blank anchorite repast when Pen dined from home: and he himself headed the remonstrance from the kitchen regarding the deteriorated quality of the Fairoaks beer. She was becoming miserly for Pen. Indeed, who ever accused women of being just? They are always sacrificing themselves or somebody for somebody else's sake. There happened to be no young woman in the small circle of friends who were in the widow's intimacy whom Pendennis could by any possibility gratify by endowing her with the inestimable treasure of a heart which he was longing to give away. Some young fellows in this predicament bestow their young affections upon Dolly, the dairy-maid, or cast the eyes of tenderness upon Molly, the blacksmith's daughter. Pen thought a Pendennis much too grand a personage to stoop so low. He was too high-minded for a vulgar intrigue, and, at the idea of an intrigue or a seduction, had he ever entertained it, his heart would have revolted as from the notion of any act of baseness or dishonor. Miss Minny Portman was too old, too large, and too fond of reading "Rollin's Ancient History." The Miss Boardbacks, Admiral Boardback's daughters (of St. Vincent's, or fourth of June House, as it was called), disgusted Pen with the London airs which they brought into the country, from Gloucester Place, where they passed the season, and looked down upon Pen as a chit. Captain Glanders's (H. P., 50th Dragoon Guards) three girls were in brown-holland pinafores as yet, with the ends of their hair-plaits tied up in dirty pink ribbon. Not having acquired the art of dancing, the youth avoided such chances as he might have had of meeting with the fair sex at the Chatteries' Assemblies; in fine, he was not in love, because there was nobody at hand to fell in love with. And the young monkey used to ride out, day after day, in quest of Dulcinea, and peep into the pony-chaises and gentlefolks' carriages, as they drove along the broad turnpike roads, with a heart heating within him, and a secret tremor and hope that she might be in that yellow post-chaise coming swinging up the hill, or one of those three girls in beaver bonnets in the back seat of the double gig, which the fat old gentleman in black was driving, at four miles an hour. The post-chaise contained a snuffy old dowager of seventy, with a maid, her contemporary. The three girls in the beaver bonnets were no handsomer than the turnips that skirted the roadside. Do as he might, and ride where he would, the fairy princess that he was to rescue and win, had not yet appeared to honest Pen. Upon these points he did not discourse to his mother. He had a world of his own. What generous, ardent, imaginative soul has not a secret pleasure-place in which it disports? Let no clumsy prying or dull meddling of ours try to disturb it in our children. Actæon was a brute for wanting to push in where Diana was bathing. Leave him occasionally alone, my good madame, if you have a poet for a child. Even your admirable advice may be a bore sometimes. You are faultless; but it does not follow that every body in your family is to think exactly like yourself. Yonder little child may have thoughts too deep even for your great mind, and fancies so coy and timid that they will not bare them selves when your ladyship sits by. Helen Pendennis by the force of sheer love divined a great number of her son's secrets. But she kept these things in her heart (if we may so speak), and did not speak of them. Besides, she had made up her mind that he was to marry little Laura, who would be eighteen when Pen was six-and-twenty: and had finished his college career, and had made his grand tour, and was settled either in London, astonishing all the metropolis by his learning and eloquence at the bar, or, better still, in a sweet country parsonage surrounded with hollyhocks and roses, close to a delightful romantic ivy-covered church, from the pulpit of which Pen would utter the most beautiful sermons ever preached. While these natural sentiments were waging war and trouble in honest Pen's bosom, it chanced one day that he rode into Chatteries, for the purpose of carrying to the County Chronicle a tremendous and thrilling poem for the next week's paper; and putting up his horse according to custom, at the stables of the George Hotel there, he fell in with an old acquaintance. A grand black tandem, with scarlet wheels came rattling into the inn yard, as Pen stood there in converse with the hostler about Rebecca; and the voice of the driver called out, "Hallo, Pendennis, is that you?" in a loud, patronizing manner. Pen had some difficulty in recognizing under the broad-brimmed hat and the vast great coats and neckcloths, with which the new comer was habited, the person and figure of his quondam schoolfellow, Mr. Foker. A year's absence had made no small difference in that gentleman. A youth who had been deservedly whipped a few months previously, and who spent his pocket-money on tarts and hardbake, now appeared before Pen in one of those costumes to which the public consent, that I take to be quite as influential in this respect as "Johnson's Dictionary," has awarded the title of "Swell." He had a bull-dog between his legs, and in his scarlet shawl neckcloth was a pin representing another bull-dog in gold: he wore a fur waistcoat laced over with gold chains; a green cut-away coat with basket-buttons, and a white upper-coat ornamented with cheese-plate buttons, on each of which was engraved some stirring incident of the road or the chase; all which ornaments set off this young fellow's figure to such advantage, that you would hesitate to say which character in life he most resembled, and whether he was a boxer en goguette, or a coachman in his gala suit. "Left that place for good, Pendennis?" Mr. Foker said, descending from his landau, and giving Pendennis a finger. "Yes, this year or more," Pen said. "Beastly old hole," Mr. Foker remarked. "Hate it. Hate the doctor: hate Towzer, the second master; hate every body there. Not a fit place for a gentleman." "Not at all," said Pen with an air of the utmost consequence. "By gad, sir, I sometimes dream, now, that the doctor's walking into me," Foker continued (and Pen smiled as he thought that he himself had likewise fearful dreams of this nature). "When I think of the diet there, by gad, sir, I wonder how I stood it. Mangy mutton, brutal beef, pudding on Thursdays and Sundays, and that fit to poison you. Just look at my leader – did you ever see a prettier animal? Drove over from Baymouth. Came the nine mile in two-and-forty minutes. Not bad going, sir." "Are you stopping at Baymouth, Foker?" Pendennis asked. "I'm coaching there," said the other, with a nod. "What?" asked Pen, and in a tone of such wonder, that Foker burst out laughing, and said, "He was blowed if he didn't think Pen was such a flat as not to know what coaching meant." "I'm come down with a coach from Oxford. A tutor, don't you see, old boy? He's coaching me, and some other men, for the little go. Me and Spavin have the drag between us. And I thought I'd just tool over, and go to the play. Did you ever see Rowkins do the hornpipe?" and Mr. Foker began to perform some steps of that popular dance in the inn yard, looking round for the sympathy of his groom and the stable men. Pen thought he would like to go to the play too: and could ride home afterward, as there was a moonlight. So he accepted Foker's invitation to dinner, and the young men entered the inn together, where Mr. Foker stopped at the bar, and called upon Miss Rincer, the landlady's fair daughter, who presided there, to give him a glass of "his mixture." Pen and his family had been known at the George ever since they came into the country; and Mr. Pendennis's carriages and horses always put up there when he paid a visit to the county town. The landlady dropped the heir of Fairoaks a respectful courtesy, and complimented him upon his growth and manly appearance, and asked news of the family at Fairoaks, and of Doctor Portman and the Clavering people, to all of which questions the young gentleman answered with much affability. But he spoke to Mr. and Mrs. Rincer with that sort of good nature with which a young prince addresses his father's subjects; never dreaming that those "bonnes gens" were his equals in life. Mr. Foker's behavior was quite different. He inquired for Rincer and the cold in his nose, told Mrs. Rincer a riddle, asked Miss Rincer when she would be ready to marry him, and paid his compliments to Miss Brett, the other young lady in the bar, all in a minute of time, and with a liveliness and facetiousness which set all these ladies in a giggle; and he gave a cluck, expressive of great satisfaction as he tossed off his mixture which Miss Rincer prepared and handed to him. "Have a drop," said he to Pen, "it's recommended to me by the faculty as a what-do-you-call-'em – a stomatic, old boy. Give the young one a glass, R, and score it up to yours truly." Poor Pen took a glass, and every body laughed at the face which he made as he put it down. – Gin, bitters, and some other cordial, was the compound with which Mr. Foker was so delighted as to call it by the name of Foker's own. As Pen choked, sputtered, and made faces, the other took occasion to remark to Mr. Rincer that the young fellow was green, very green, but that he would soon form him; and then they proceeded to order dinner – which Mr. Foker determined should consist of turtle and venison; cautioning the landlady to be very particular about icing the wine. Then Messrs. Foker and Pen strolled down the High-street together – the former having a cigar in his mouth, which he had drawn out of a case almost as big as a portmanteau. He went in to replenish it at Mr. Lewis's, and talked to that gentleman for a while, sitting down on the counter; he then looked in at the fruiterer's, to see the pretty girl there, to whom he paid compliments similar to those before addressed to the bar at the George; then they passed the County Chronicle office, for which Pen had his packet ready, in the shape of "Lines to Thyrza," but poor Pen did not like to put the letter into the editor's box while walking in company with such a fine gentleman as Mr. Foker. They met heavy dragoons of the regiment always quartered at Chatteries; and stopped and talked about the Baymouth balls, and what a pretty girl was Miss Brown, and what a dem fine woman Mrs. Jones was. It was in vain that Pen recalled to his own mind what a stupid ass Foker used to be at school – how he could scarcely read, how he was not cleanly in his person, and notorious for his blunders and dullness. Mr. Foker was no more like a gentleman now than in his school days; and yet Pen felt a secret pride in strutting down High-street with a young fellow who owned tandems, talked to officers, and ordered turtle and champagne for dinner. He listened, and with respect too, to Mr. Foker's accounts of what the men did at the University of which Mr. F. was an ornament, and encountered a long series of stories about boat-racing, bumping, College grass-plats, and milk-punch – and began to wish to go up himself to College to a place where there were such manly pleasures and enjoyments. Farmer Gurnett, who lives close by Fairoaks, riding by at this minute and touching his hat to Pen, the latter stopped him, and sent a message to his mother to say that he had met with an old schoolfellow, and should dine in Chatteries. The two young gentlemen continued their walk, and were passing round the Cathedral Yard, where they could hear the music of the afternoon service (a music which always exceedingly impressed and affected Pen), but whither Mr. Foker came for the purpose of inspecting the nursery maids who frequent the Elms Walk there, and who are uncommonly pretty at Chatteries, and here they strolled until with a final burst of music the small congregation was played out. Old Doctor Portman was one of the few who came from the venerable gate. Spying Pen, he came and shook him by the hand, and eyed with wonder Pen's friend, from whose mouth and cigar clouds of fragrance issued, which curled round the doctor's honest face and shovel hat. "An old schoolfellow of mine, Mr. Foker," said Pen. The doctor said "H'm": and scowled at the cigar. He did not mind a pipe in his study, but the cigar was an abomination to the worthy gentleman. "I came up on Bishop's business," the doctor said. "We'll ride home, Arthur, if you like?" "I – I'm engaged to my friend here," Pen answered. "You had better come home with me," said the doctor. "His mother knows he's out, sir," Mr. Foker remarked; "don't she, Pendennis?" "But that does not prove that he had not better come home with me," the doctor growled, and he walked off with great dignity. "Old boy don't like the weed, I suppose," Foker said. "Ha! who's here? – here's the general, and Bingley, the manager. How do, Cos? How do, Bingley?" "How does my worthy and gallant young Foker?" said the gentleman addressed as the general; and who wore a shabby military cape with a mangy collar, and a hat cocked very much over one eye. "Trust you are very well, my very dear sir," said the other gentleman, "and that the Theater Royal will have the honor of your patronage to-night. We perform 'The Stranger,' in which your humble servant will – " "Can't stand you in tights and Hessians, Bingley," young Mr. Foker said. On which the general, with the Irish accent, said, "But I think ye'll like Miss Fotheringay, in Mrs. Haller, or me name's not Jack Costigan." Pen looked at these individuals with the greatest interest. He had never seen an actor before; and he saw Dr. Portman's red face looking over the doctor's shoulder, as he retreated from the Cathedral Yard, evidently quite dissatisfied with the acquaintances into whose hands Pen had fallen. Perhaps it would have been much better for him had he taken the parson's advice and company home. But which of us knows his fate? CHAPTER IV. MRS. HALLER Having returned to the George, Mr. Foker and his guest sate down to a handsome repast in the coffee-room; where Mr. Rincer brought in the first dish, and bowed as gravely as if he was waiting upon the Lord-Lieutenant of the county. Mr. Foker attacked the turtle and venison with as much gusto as he had shown the year before, when he used to make feasts off ginger-beer and smuggled polonies. Pen could not but respect his connoisseurship as he pronounced the champagne to be condemned gooseberry, and winked at the port with one eye. The latter he declared to be of the right sort; and told the waiters, there was no way of humbugging him. All these attendants he knew by their Christian names, and showed a great interest in their families; and as the London coaches drove up, which in those early days used to set off from the George, Mr. Foker flung the coffee-room window open, and called the guards and coachmen by their Christian names, too, asking about their respective families, and imitating with great liveliness and accuracy the tooting of the horns as Jem the ostler whipped the horses' cloths off, and the carriages drove gayly away. "A bottle of sherry, a bottle of sham, a bottle of port and a shass caffy, it ain't so bad, hay, Pen?" Foker said, and pronounced, after all these delicacies and a quantity of nuts and fruit had been dispatched, that it was time to "toddle." Pen sprang up with very bright eyes, and a flushed face; and they moved off toward the theater, where they paid their money to the wheezy old lady slumbering in the money taker's box. "Mrs. Dropsicum, Bingley's mother-in-law, great in Lady Macbeth," Foker said to his companion. Foker knew her, too. They had almost their choice of places in the boxes of the theater, which was no better filled than country theaters usually are, in spite of the "universal burst of attraction and galvanic thrills of delight" advertised by Bingley in the play-bills. A score or so of people dotted the pit-benches, a few more kept a kicking and whistling in the galleries, and a dozen others, who came in with free admissions, were in the boxes where our young gentlemen sate. Lieutenants Rodgers and Podgers, and young Cornet Tidmus, of the Dragoons, occupied a private box. The performers acted to them, and these gentlemen seemed to hold conversations with the players when not engaged in the dialogue, and applauded them by name loudly. Bingley the manager, who assumed all the chief tragic and comic parts except when he modestly retreated to make way for the London stars, who came down occasionally to Chatteries; was great in the character of the "Stranger." He was attired in the tight pantaloons and Hessian boots which the stage legend has given to that injured man, with a large cloak and beaver and a hearse feather in it drooping over his raddled old face, and only partially concealing his great buckled brown wig. He had the stage-jewelry on, too, of which he selected the largest and most shiny rings for himself, and allowed his little finger to quiver out of his cloak with a sham diamond ring covering the first joint of the finger and twiddling in the faces of the pit. Bingley made it a favor to the young men of his company to go on in light comedy parts with that ring. They flattered him by asking its history. The stage has its traditional jewels as the crown and all great families have. This had belonged to George Frederick Cooke, who had had it from Mr. Quin, who may have bought it for a shilling. Bingley fancied the world was fascinated with its glitter. He was reading out of the stage-book – that wonderful stage-book which is not bound like any other book in the world, but is rouged and tawdry like the hero or heroine who holds it; and who holds it as people never do hold books; and points with his finger to a passage, and wags his head ominously at the audience, and then lifts up eyes and finger to the ceiling professing to derive some intense consolation from the work, between which and heaven there is a strong affinity. Any body who has ever seen one of our great light comedians, X. in a chintz dressing-gown, such as nobody ever wore, and representing himself to the public as a young nobleman in his apartments, and whiling away the time with light literature until his friend Sir Harry shall arrive, or his father shall come down to breakfast – any body, I say, who has seen the great X. over a sham book has indeed had a great pleasure and an abiding matter for thought. Directly the Stranger saw the young men, he acted at them; eying them solemnly over his gilt volume as he lay on the stage-bank showing his hand, his ring, and his Hessians. He calculated the effect that every one of these ornaments would produce upon his victims; he was determined to fascinate them, for he knew they had paid their money; and he saw their families coming in from the country and filling the cane chairs in his boxes. As he lay on the bank reading, his servant, Francis, made remarks upon his master. "Again reading," said Francis, "thus it is, from morn to night. To him nature has no beauty – life no charm. For three years I have never seen him smile" (the gloom of Bingley's face was fearful to witness during these comments of the faithful domestic). "Nothing diverts him. O, if he would but attach himself to any living thing, were it an animal – for something man must love." [Enter Tobias (Goll) from the hut]. He cries, "O, how refreshing, after seven long weeks, to feel these warm sunbeams once again. Thanks, bounteous heaven, for the joy I taste!" He presses his cap between his hands, looks up and prays. The Stranger eyes him attentively. Francis to the Stranger. "This old man's share of earthly happiness can be but little. Yet mark how grateful he is for his portion of it." Bingley. "Because though old, he is but a child in the leading-string of hope." (He looks steadily at Foker, who, however, continues to suck the top of his stick in an unconcerned manner.) Francis. "Hope is the nurse of life." Bingley. "And her cradle – is the grave." The stranger uttered this with the moan of a bassoon in agony, and fixed his eyes on Pendennis so steadily, that the poor lad was quite put out of countenance. He thought the whole house must be looking at him; and cast his eyes down. As soon as ever he raised them Bingley's were at him again. All through the scene the manager played at him. When he was about to do a good action, and sent off Francis with his book, so that that domestic should not witness the deed of benevolence which he meditated, Bingley marked the page carefully, so that he might continue the perusal of the volume off the stage if he liked. But all was done in the direct face of Pendennis, whom the manager was bent upon subjugating. How relieved the lad was when the scene ended, and Foker, tapping with his cane, cried out, "Bravo Bingley!" "Give him a hand, Pendennis; you know every chap likes a hand," Mr. Foker said; and the good-natured young gentleman, and Pendennis laughing, and the dragoons in the opposite box, began clapping hands to the best of their power. A chamber in Wintersen Castle closed over Tobias's hut and the Stranger and his boots; and servants appeared bustling about with chairs and tables – "That's Hicks and Miss Thackthwaite," whispered Foker. "Pretty girl, ain't she, Pendennis? But stop – hurray – bravo! here's the Fotheringay." The pit thrilled and thumped its umbrellas; a volley of applause was fired from the gallery: the dragoon officers and Foker clapped their hands furiously: you would have thought the house was full, so loud were their plaudits. The red face and ragged whiskers of Mr. Costigan were seen peering from the side-scene. Pen's eyes opened wide and bright, as Mrs. Haller entered with a downcast look, then rallying at the sound of the applause, swept the house with a grateful glance, and, folding her hands across her breast, sank down in a magnificent courtesy. More applause, more umbrellas; Pen this time, flaming with wine and enthusiasm, clapped hands and sang "bravo" louder than all. Mrs. Haller saw him, and every body else, and old Mr. Bows, the little first fiddler of the orchestra (which was this night increased by a detachment of the band of the Dragoons, by the kind permission of Colonel Swallowtail), looked up from the desk where he was perched, with his crutch beside him, and smiled at the enthusiasm of the lad. Those who have only seen Miss Fotheringay in later days, since her marriage and introduction into London life, have little idea how beautiful a creature she was at the time when our friend Pen first set eyes on her: and I warn my reader, as beforehand, that the pencil which illustrates this work (and can draw an ugly face tolerably well, but is sadly put out when it tries to delineate a beauty) can give no sort of notion of her. She was of the tallest of women, and at her then age of six-and-twenty – for six-and-twenty she was, though she vows she was only nineteen – in the prime and fullness of her beauty. Her forehead was vast, and her black hair waved over it with a natural ripple (that beauties of late days have tried to imitate with the help of the crimping-irons) and was confined in shining and voluminous braids at the back of a neck such as you see on the shoulders of the Louvre Venus – that delight of gods and men. Her eyes, when she lifted them up to gaze on you, and ere she dropped their purple deep-fringed lids, shone with tenderness and mystery unfathomable. Love and Genius seemed to look out from them and then retire coyly, as if ashamed to have been seen at the lattice. Who could have had such a commanding brow but a woman of high intellect? She never laughed (indeed her teeth were not good), but a smile of endless tenderness and sweetness played round her beautiful lips, and in the dimples of her cheeks and her lovely chin. Her nose defied description in those days. Her ears were like two little pearl shells, which the ear-rings she wore (though the handsomest properties in the theater) only insulted. She was dressed in long flowing robes of black, which she managed and swept to and fro with wonderful grace, and out of the folds of which you only saw her sandals occasionally; they were of rather a large size; but Pen thought them as ravishing as the slippers of Cinderella. But it was her hand and arm that this magnificent creature most excelled in, and somehow you could never see her but through them. They surrounded her. When she folded them over her bosom in resignation; when she dropped them in mute agony, or raised them in superb command; when in sportive gayety her hands fluttered and waved before her, like – what shall we say? – like the snowy doves before the chariot of Venus – it was with these arms and hands that she beckoned, repelled, entreated, embraced, her admirers – no single one, for she was armed with her own virtue, and with her father's valor, whose sword would have leapt from its scabbard at any insult offered to his child – but the whole house; which rose to her, as the phrase was, as she courtesied and bowed, and charmed it. Thus she stood for a minute – complete and beautiful – as Pen stared at her. "I say, Pen, isn't she a stunner?" asked Mr. Foker. "Hush!" Pen said. "She's speaking." She began her business in a deep sweet voice. Those who know the play of the "Stranger," are aware that the remarks made by the various characters are not valuable in themselves, either for their sound sense, their novelty of observation, or their poetic fancy. In fact, if a man were to say it was a stupid play he would not be far wrong. Nobody ever talked so. If we meet idiots in life, as will happen, it is a great mercy that they do not use such absurdly fine words. The Stranger's talk is sham, like the book he reads, and the hair he wears, and the bank he sits on, and the diamond ring he makes play with – but, in the midst of the balderdash, there runs that reality of love, children, and forgiveness of wrong, which will be listened to wherever it is preached, and sets all the world sympathizing. With what smothered sorrow, with what gushing pathos, Mrs. Haller delivered her part! At first, when as Count Wintersen's housekeeper, and preparing for his Excellency's arrival, she has to give orders about the beds and furniture, and the dinner, &c., to be got ready, she did so with the calm agony of despair. But when she could get rid of the stupid servants and give vent to her feelings to the pit and the house, she overflowed to each individual as if he were her particular confidant, and she was crying out her griefs on his shoulder: the little fiddler in the orchestra (whom she did not seem to watch, though he followed her ceaselessly) twitched, twisted, nodded, pointed about, and when she came to the favorite passage "I have a William, too, if he be still alive – Ah, yes, if he be still alive. His little sisters, too! Why, Fancy, dost thou rack me so? Why dost thou image my poor children fainting in sickness, and crying to – to – their mum-um-other," – when she came to this passage little Bows buried his face in his blue cotton handkerchief, after crying out "Bravo." All the house was affected. Foker, for his part, taking out a large yellow bandanna, wept piteously. As for Pen, he was gone too far for that. He followed the woman about and about – when she was off the stage, it and the house were blank; the lights and the red officers reeled wildly before his sight. He watched her at the side-scene – where she stood waiting to come on the stage, and where her father took off her shawl; when the reconciliation arrived, and she flung herself down on Mr. Bingley's shoulders, while the children clung to their knees, and the countess (Mrs. Bingley) and Baron Steinforth (performed with great liveliness and spirit by Garbetts) – while the rest of the characters formed a group round them, Pen's hot eyes only saw Fotheringay, Fotheringay. The curtain fell upon him like a pall. He did not hear a word of what Bingley said, who came forward to announce the play for the next evening, and who took the tumultuous applause, as usual, for himself. Pen was not even distinctly aware that the house was calling for Miss Fotheringay, nor did the manager seem to comprehend that any body else but himself had caused the success of the play. At last he understood it – stepped back with a grin, and presently appeared with Mrs. Haller on his arm. How beautiful she looked! Her hair had fallen down, the officers threw her flowers. She clutched them to her heart. She put back her hair, and smiled all round. Her eyes met Pen's. Down went the curtain again: and she was gone. Not one note could he hear of the overture which the brass band of the Dragoons blew by kind permission of Colonel Swallowtail. "She is a crusher, ain't she now?" Mr. Foker asked of his companion. Pen did not know exactly what Foker said, and answered vaguely. He could not tell the other what he felt; he could not have spoken, just then, to any mortal. Besides, Pendennis did not quite know what he felt yet; it was something overwhelming, maddening, delicious; a fever of wild joy and undefined longing. And now Rowkins and Miss Thackthwaite came on to dance the favorite double hornpipe, and Foker abandoned himself to the delights of this ballet, just as he had to the tears of the tragedy, a few minutes before. Pen did not care for it, or indeed think about the dance, except to remember that that woman was acting with her in the scene where she first came in. It was a mist before his eyes. At the end of the dance he looked at his watch and said it was time for him to go. "Hang it, stay to see The Bravo of the Battle-Ax," Foker said, "Bingley's splendid in it; he wears red tights, and has to carry Mrs. B. over the Pine-bridge of the Cataract, only she's too heavy. It's great fun, do stop." Pen looked at the bill with one lingering fond hope that Miss Fotheringay's name might be hidden somewhere in the list of the actors of the after-piece, but there was no such name. Go he must. He had a long ride home. He squeezed Foker's hand. He was choking to speak, but he couldn't. He quitted the theater and walked frantically about the town, he knew not how long; then he mounted at the George and rode homeward, and Clavering clock sang out one as he came into the yard at Fairoaks. The lady of the house might have been awake, but she only heard him from the passage outside his room as he dashed into bed and pulled the clothes over his head. Pen had not been in the habit of passing wakeful nights, so he at once fell off into a sound sleep. Even in later days, and with a great deal of care and other thoughtful matter to keep him awake, a man, from long practice or fatigue or resolution, begins by going to sleep as usual: and gets a nap in advance of Anxiety. But she soon comes up with him and jogs his shoulder, and says "Come, my man, no more of this laziness, you must wake up and have a talk with me." Then they fall to together in the midnight. Well, whatever might afterward happen to him, poor little Pen was not come to this state yet; he tumbled into a sound sleep – did not wake until an early hour in the morning, when the rooks began to caw from the little wood beyond his bed-room windows; and – at that very instant and as his eyes started open, the beloved image was in his mind. "My dear boy," he heard her say, "you were in a sound sleep, and I would not disturb you: but I have been close by your pillow all this while: and I don't intend that you shall leave me. I am Love! I bring with me fever and passion: wild longing, maddening desire; restless craving and seeking. Many a long day ere this I heard you calling out for me; and behold now I am come." Was Pen frightened at the summons? Not he. He did not know what was coming: it was all wild pleasure and delight as yet. And as, when three years previously, and on entering the fifth form at the Cistercians, his father had made him a present of a gold watch, which the boy took from under his pillow and examined on the instant of waking: forever rubbing and polishing it up in private, and retiring into corners to listen to its ticking: so the young man exulted over his new delight; felt in his waistcoat pocket to see that it was safe; wound it up at nights, and at the very first moment of waking hugged it and looked at it. – By the way, that first watch of Pen's was a showy ill manufactured piece: it never went well from the beginning, and was always getting out of order. And after putting it aside into a drawer and forgetting it for some time, he swapped it finally away for a more useful time-keeper. Pen felt himself to be ever so many years older since yesterday. There was no mistake about it now. He was as much in love as the best hero in the best romance he ever read. He told John to bring his shaving water with the utmost confidence. He dressed himself in some of his finest clothes that morning: and came splendidly down to breakfast, patronizing his mother and little Laura, who had been strumming her music lesson for hours before; and who after he had read the prayers (of which he did not heed one single syllable) wondered at his grand appearance, and asked him to tell her what the play was about. Pen laughed, and declined to tell Laura what the play was about. In fact, it was quite as well that she should not know. Then she asked him why he had got on his fine pin and beautiful new waistcoat? Pen blushed, and told his mother that the old schoolfellow with whom he had dined at Chatteries was reading with a tutor at Baymouth, a very learned man; and as he was himself to go to College, and as there were several young men pursuing their studies at Baymouth – he was anxious to ride over – and – and just see what the course of their reading was. Laura made a long face. Helen Pendennis looked hard at her son, troubled more than ever with the vague doubt and terror which had been haunting her ever since the last night, when Farmer Gurnett brought back the news that Pen would not return home to dinner. Arthur's eyes defied her. She tried to console herself, and drive off her fears. The boy had never told her an untruth. Pen conducted himself during breakfast in a very haughty and supercilious manner; and, taking leave of the elder and younger lady, was presently heard riding out of the stable court. He went gently at first, but galloped like a madman as soon as he thought he was out of hearing. Smirke, thinking of his own affairs, and softly riding with his toes out, to give Pen his three hours' reading at Fairoaks, met his pupil, who shot by him like the wind. Smirke's pony shied, as the other thundered past him; the gentle curate went over his head among the stinging nettles in the hedge. Pen laughed as they met, pointed toward the Baymouth road, and was gone half a mile in that direction before poor Smirke had picked himself up. Pen had resolved in his mind that he must see Foker, that morning, he must hear about her; know about her; be with somebody who knew her; and honest Smirke, for his part, sitting up among the stinging-nettles, as his pony cropped quietly in the hedge, thought dismally to himself, ought he to go to Fairoaks now that his pupil was evidently gone away for the day. Yes, he thought he might go too. He might go and ask Mrs. Pendennis when Arthur would be back; and hear Miss Laura her Watts's Catechism. He got up on the little pony – both were used to his slipping off – and advanced upon the house from which his scholar had just rushed away in a whirlwind. Thus love makes fools of all of us, big and little; and the curate had tumbled over head and heels in pursuit of it, and Pen had started in the first heat of the mad race. CHAPTER V. MRS. HALLER AT HOME Without slackening her pace, Rebecca the mare galloped on to Baymouth, where Pen put her up at the inn stables, and ran straightway to Mr. Foker's lodgings, which he knew from the direction given to him by that gentleman on the previous day. On reaching these apartments, which were over a chemist's shop whose stock of cigars and soda-water went off rapidly by the kind patronage of his young inmates, Pen only found Mr. Spavin, Foker's friend, and part owner of the tandem which the latter had driven into Chatteries, who was smoking, and teaching a little dog, a friend of his, tricks with a bit of biscuit. Pen's healthy red face fresh from the gallop, compared oddly, with the waxy, debauched little features of Foker's chum; the latter remarked it. "Who's that man?" he thought, "he looks as fresh as a bean, His hand don't shake of a morning, I'd bet five to one." Foker had not come home at all. Here was a disappointment! — Mr. Spavin could not say when his friend would return. Sometimes he stopped a day, sometimes a week. Of what college was Pen? Would he have any thing? There was a very fair tap of ale. Mr. Spavin was enabled to know Pendennis's name, on the card which the latter took out and laid down (perhaps Pen in these days was rather proud of having a card) – and so the young men took leave. Then Pen went down the rock, and walked about on the sand, biting his nails by the shore of the much sounding sea. It stretched before him bright and immeasurable. The blue waters came rolling into the bay, foaming and roaring hoarsely: Pen looked them in the face, with blank eyes, hardly regarding them. What a tide there was pouring into the lad's own mind at the time, and what a little power had he to check it! Pen flung stones into the sea, but it still kept coming on. He was in a rage at not seeing Foker. He wanted to see Foker. He must see Foker. "Suppose I go on – on the Chatteries road, just to see if I can meet him," Pen thought. Rebecca was saddled in another half hour, and galloping on the grass by the Chatteries road. About four miles from Baymouth, the Clavering road branches off, as every body knows, and the mare naturally was for taking that turn, but, cutting her over the shoulder, Pen passed the turning, and rode on to the turnpike without seeing any sign of the black tandem and red wheels. As he was at the turnpike, he might as well go on: that was quite clear. So Pen rode to the George, and the hostler told him that Mr Foker was there sure enough, and that "he'd been a making a tremendous row the night afore, a drinkin and a singin, and wanting to fight Tom the post-boy: which I'm thinking he'd have the worst of it," the man added, with a grin. – "Have you carried up your master's hot water to shave with?" he added, in a very satirical manner, to Mr. Foker's domestic, who here came down the yard bearing his master's clothes, most beautifully brushed and arranged. "Show Mr. Pendennis up to 'un," and Pen followed the man at last to the apartment, where, in the midst of an immense bed, Mr. Harry Foker lay reposing. The feather bed and bolsters swelled up all round Mr. Foker, so that you could hardly see his little sallow face and red silk night-cap. "Hullo!" said Pen. "Who goes there? brother, quickly tell!" sang out the voice from the bed. "What! Pendennis again? Is your mamma acquainted with your absence? Did you sup with us last night? No – stop – who supped with us last night, Stoopid?" "There was the three officers, sir, and Mr. Bingley, sir, and Mr. Costigan, sir," the man answered, who received all Mr. Foker's remarks with perfect gravity. "Ah yes: the cup and merry jest went round. We chanted: and I remember I wanted to fight a post-boy. Did I thrash him, Stoopid?" "No, sir. Fight didn't come off, sir," said Stoopid, still with perfect gravity. He was arranging Mr. Foker's dressing-case – a trunk, the gift of a fond mother, without which the young fellow never traveled. It contained a prodigious apparatus in plate; a silver dish, a silver mug, silver boxes and bottles for all sorts of essences, and a choice of razors ready against the time when Mr. Foker's beard should come. "Do it some other day," said the young fellow, yawning and throwing up his little lean arms over his head. "No, there was no fight; but there was chanting. Bingley chanted, I chanted, the general chanted – Costigan I mean. – Did you ever hear him sing 'The Little Pig under the Bed,' Pen?" "The man we met yesterday," said Pen, all in a tremor, "the father of – " "Of the Fotheringay – the very man. Ain't she a Venus, Pen?" "Please sir, Mr. Costigan's in the sittin-room, sir, and says, sir, you asked him to breakfast, sir. Called five times, sir; but wouldn't wake you on no account; and has been year since eleven o'clock, sir – " "How much is it now?" "One, sir." "What would the best of mothers say," cried the little sluggard, "if she saw me in bed at this hour? She sent me down here with a grinder. She wants me to cultivate my neglected genus. – He he! I say, Pen, this isn't quite like seven o'clock school – is it, old boy?" – and the young fellow burst out into a boyish laugh of enjoyment. Then he added – "Go in and talk to the general whilst I dress. And I say, Pendennis, ask him to sing you 'The Little Pig under the Bed;' it's capital." Pen went off in great perturbation, to meet Mr. Costigan, and Mr. Foker commenced his toilet. Of Mr. Foker's two grandfathers, the one from whom he inherited a fortune, was a brewer; the other was an earl, who endowed him with the most doting mother in the world. The Fokers had been at the Cistercian school, from father to son; at which place, our friend whose name could be seen over the play-ground wall, on a public-house sign, under which "Foker's Entire" was painted, had been dreadfully bullied on account of his trade, his uncomely countenance, his inaptitude for learning and cleanliness, his gluttony and other weak points. But those who know how a susceptible youth, under the tyranny of his schoolfellows becomes silent and a sneak, may understand how, in a very few months after his liberation from bondage, he developed himself as he had done; and became the humorous, the sarcastic, the brilliant Foker, with whom we have made acquaintance. A dunce he always was, it is true; for learning can not be acquired by leaving school and entering at college as a fellow commoner; but he was now (in his own peculiar manner) as great a dandy as he before had been a slattern, and when he entered his sitting-room to join his two guests, arrived scented and arrayed in fine linen, and perfectly splendid in appearance. General or Captain Costigan – for the latter was the rank which he preferred to assume – was seated in the window with the newspaper held before him at arm's length. The captain's eyes were somewhat dim; and he was spelling the paper with the help of his lips as well as of those blood-shot eyes of his, as you see gentlemen do to whom reading is a rare and difficult occupation. His hat was cocked very much on one ear; and as one of his feet lay up in the window-seat, the observer of such matters might remark, by the size and shabbiness of the boots which the captain wore that times did not go very well with him. Poverty seems as if it were disposed, before it takes possession of a man entirely, to attack his extremities first: the coverings of his head, feet, and hands, are its first prey. All these parts of the captain's person were particularly rakish and shabby. As soon as he saw Pen he descended from the window-seat and saluted the new comer, first in a military manner, by conveying a couple of his fingers (covered with a broken black glove) to his hat, and then removing that ornament altogether. The captain was inclined to be bald, but he brought a quantity of lank iron-gray hair over his pate, and had a couple of wisps of the same falling down on each side of his face. Much whisky had spoiled what complexion Mr. Costigan may have possessed in his youth. His once handsome face had now a copper tinge. He wore a very high stock, scarred and stained in many places; and a dress-coat tightly buttoned up in those parts where the buttons had not parted company from the garment. "The young gentleman to whom I had the honor to be introjuiced yesterday in the Cathadral Yard," said the captain, with a splendid bow and wave of his hat. "I hope I see you well, sir. I marked ye in the thayater last night during me daughter's perfawrumance; and missed ye on my return. I did but conduct her home, sir, for Jack Costigan, though poor, is a gentleman; and when I reintered the house to pay me respects to me joyous young friend Mr. Foker – ye were gone. We had a jolly night of ut, sir – Mr. Foker, the three gallant young dragoons, and your 'umble servant. Gad, sir, it put me in mind of one of our old nights when I bore His Majesty's commission in the Foighting Hundtherd and Third." And he pulled out an old snuff-box, which he presented with a stately air to his new acquaintance. Arthur was a great deal too much flurried to speak. This shabby-looking buck was – was her father. The captain was perfumed with the recollections of the last night's cigars, and pulled and twisted the tuft on his chin as jauntily as any young dandy. "I hope, Miss F – , Miss Costigan is well sir," Pen said, flushing up. "She – she gave me greater pleasure, than – than I – I – I ever enjoyed at a play. I think, sir – I think she's the finest actress in the world," he gasped out. "Your hand, young man! for ye speak from your heart," cried the captain. "Thank ye, sir, an old soldier and a fond father thanks ye. She is the finest actress in the world. I've seen the Siddons, sir, and the O'Nale. – They were great, but what were they compared to Miss Fotheringay? I do not wish that she should ashume her own name while on the stage. Me family, sir, are proud people; and the Costigans of Costiganstown think that an honest man who has borne Her Majesty's colors in the Hundred and Third, would demean himself, by permitting his daughter to earn her old father's bread." "There can not be a more honorable duty, surely," Pen said. "Honorable! Bedad, sir, I'd like to see the man who said Jack Costigan would consent to any thing dishonorable. I have a heart, sir, though I am poor; I like a man who has a heart. You have; I read it in your honest face and steady eye. And would you believe it?" he added, after a pause, and with a pathetic whisper, "that that Bingley, who has made his fortune by me child, gives her but two guineas a week, out of which she finds herself in dresses, and which, added to me own small means makes our all?" Now the captain's means were so small as to be, it may be said, quite invisible. But nobody knows how the wind is tempered to shorn Irish lambs, and in what marvelous places they find pasture. If Captain Costigan, whom I had the honor to know, would but have told his history, it would have been a great moral story. But he neither would have told it if he could, nor could if he would; for the captain was not only unaccustomed to tell the truth – he was unable even to think it – and fact and fiction reeled together in his muzzy, whiskified brain. He began life rather brilliantly with a pair of colors, a fine person and legs, and one of the most beautiful voices in the world. To his latest day he sang, with admirable pathos and humor, those wonderful Irish ballads which are so mirthful and so melancholy: and was always the first himself to cry at their pathos. Poor Cos! he was at once brave and maudlin, humorous and an idiot; always good-natured, and sometimes almost trustworthy. Up to the last day of his life he would drink with any man, and back any man's bill: and his end was in a spunging-house, where the sheriff's officer who took him, was fond of him. In his brief morning of life, Cos formed the delight of regimental messes, and had the honor of singing his songs, bacchanalian and sentimental, at the tables of the most illustrious generals and commanders-in-chief, in the course of which period he drank three times as much claret as was good for him, and spent his doubtful patrimony. What became of him subsequently to his retirement from the army, is no affair of ours. I take it, no foreigner understands the life of an Irish gentleman without money, the way in which he manages to keep afloat – the wind-raising conspiracies, in which he engages with heroes as unfortunate as himself – the means by which he contrives, during most days of the week, to get his portion of whisky-and-water: all these are mysteries to us inconceivable: but suffice it to say, that through all the storms of life Jack had floated somehow, and the lamp of his nose had never gone out. Before he and Pen had had a half hour's conversation, the captain managed to extract a couple of sovereigns from the young gentleman for tickets for his daughter's benefit, which was to take place speedily, and was not a bonâ fide transaction such as that of the last year, when poor Miss Fotheringay had lost fifteen shillings by her venture, but was an arrangement with the manager, by which the lady was to have the sale of a certain number of tickets, keeping for herself a large portion of the sum for which they were sold. Pen had but two pounds in his purse, and he handed them over to the captain for the tickets; he would have been afraid to offer more, lest he should offend the latter's delicacy. Costigan scrawled him an order for a box, lightly slipped the sovereigns into his waistcoat, and slapped his hand over the place where they lay. They seemed to warm his old sides. "Faith, sir," said he, "the bullion's scarcer with me than it used to be, as is the case with many a good fellow. I won six hundthred of 'em in a single night, sir, when me kind friend, His Royal Highness the Duke of Kent, was in Gibralther." And he straightway poured out to Pen a series of stories regarding the claret drunk, the bets made, the races ridden by the garrison there, with which he kept the young gentleman amused until the arrival of their host and his breakfast. Then it was good to see the captain's behavior before the deviled turkey and the mutton-chops! His stories poured forth unceasingly, and his spirits rose as he chatted to the young men. When he got a bit of sunshine, the old lazarone basked in it; he prated about his own affairs and past splendor, and all the lords, generals, and lord-lieutenants he had ever known. He described the death of his darling Bessie, the late Mrs. Costigan, and the challenge he had sent to Captain Shanty Clancy, of the Slashers, for looking rude at Miss Fotheringay as she was on her kyar in the Phaynix; and then he described how the captain apologized, gave a dinner at the Kildare-street, where six of them drank twinty-one bottles of claret, &c. He announced that to sit with two such noble and generous young fellows was the happiness and pride of an old soldier's existence; and having had a second glass of Curaçoa, was so happy that he began to cry. Altogether we should say that the captain was not a man of much strength of mind, or a very eligible companion for youth; but there are worse men, holding much better places in life, and more dishonest, who have never committed half so many rogueries as he. They walked out, the captain holding an arm of each of his dear young friends, and in a maudlin state of contentment. He winked at one or two tradesmen's shops, where, possibly, he owed a bill, as much as to say – "See the company I am in – sure I'll pay you, my boy" – and they parted finally with Mr. Foker at a billiard-room, where the latter had a particular engagement with some gentlemen of Colonel Swallowtail's regiment. Pen and the shabby captain still walked the streets together; the captain, in his sly way, making inquiries about Mr. Foker's fortune and station in life. Pen told him how Foker's father was a celebrated brewer, and his mother was Lady Agnes Milton, Lord Rosherville's daughter. The captain broke out into a strain of exaggerated compliment and panegyric about Mr. Foker, whose "native aristocracie," he said, "could be seen with the twinkling of an oi – and only served to adawrun other qualities which he possessed – a foin intellect and a generous heart" – in not one word of which speech did the captain accurately believe. Pen walked on, listening to his companion's prate, wondering, amused, and puzzled. It had not as yet entered into the boy's head to disbelieve any statement that was made to him; and being of a candid nature himself, he took naturally for truth what other people told him. Costigan had never had a better listener, and was highly flattered by the attentiveness and modest bearing of the young man. So much pleased was he with the young gentleman, so artless, honest, and cheerful did Pen seem to be, that the captain finally made him an invitation, which he very seldom accorded to young men, and asked Pen if he would do him the fevor to enter his humble abode, which was near at hand, where the captain would have the honor of inthrojuicing his young friend to his daughther, Miss Fotheringay? Pen was so delightfully shocked at this invitation, and was so stricken down by the happiness thus suddenly offered to him, that he thought he should have dropped from the captain's arm at first, and trembled lest the other should discover his emotion. He gasped out a few incoherent words, indicative of the high gratification he should have in being presented to the lady for whose – for whose talents he had conceived such an admiration – such an extreme admiration, and followed the captain, scarcely knowing whither that gentleman led him. He was going to see her! He was going to see her! In her was the center of the universe. She was the kernel of the world for Pen. Yesterday, before he knew her, seemed a period ever so long ago – a revolution was between him and that time, and a new world about to begin. The captain conducted his young friend to that quiet little street in Chatteries, which is called Prior's Lane, which lies in the ecclesiastical quarter of the town, close by Dean's Green and the canons' houses, and is overlooked by the enormous towers of the cathedral; there the captain dwelt modestly in the first floor of a low gabled house, on the door of which was the brass-plate of "Creed, Tailor and Robe-maker." Creed was dead, however. His widow was a pew-opener in the cathedral hard by; his eldest son was a little scamp of a choir-boy, who played toss-halfpenny, led his little brothers into mischief, and had a voice as sweet as an angel. A couple of the latter were sitting on the door-step, down which you went into the passage of the house; and they jumped up with great alacrity to meet their lodger, and plunged wildly, and rather to Pen's surprise, at the swallow-tails of the captain's dress-coat; for the truth is, that the good-natured gentleman, when he was in cash, generally brought home an apple or a piece of gingerbread for these children – "Whereby the widdy never pressed me for rint when not convanient," as he remarked afterward to Pen, winking knowingly, and laying a finger on his nose. Pen tumbled down the step, and as he followed his companion up the creaking old stair, his knees trembled under him. He could hardly see when he entered, following the captain, and stood in the room – in her room. He saw something black before him, and waving as if making a courtesy, and heard, but quite indistinctly, Costigan making a speech over him, in which the captain, with his usual magniloquence, expressed to "me child" his wish to make her known to "his dear and admirable young friend, Mr. Awther Pindinnis, a young gentleman of property in the neighborhood, a person of refoined moind, and emiable manners, a sincare lover of poethry, and a man possest of a feeling and affectionate heart." "It is very fine weather," Miss Fotheringay said, in an Irish accent, and with a deep, rich, melancholy voice. "Very," said Mr. Pendennis. In this romantic way their conversation began, and he found himself seated on a chair, and having leisure to look at the young lady. She looked still handsomer off the stage than before the lamps. All her attitudes were naturally grand and majestical. If she went and stood up against the mantle-piece her robe draped itself classically round her; her chin supported itself on her hand, the other lines of her form arranged themselves in full harmonious undulations: she looked like a muse in contemplation. If she sate down on a cane-bottomed chair, her arm rounded itself over the back of the seat, her hand seemed as if it ought to have a scepter put into it, the folds of her dress fell naturally round her in order, like ladies of honor round a throne, and she looked like an empress. All her movements were graceful and imperial. In the morning you could see her hair was blue-black, her complexion of dazzling fairness, with the faintest possible blush flickering, as it were, in her cheek. Her eyes were gray, with prodigious long lashes; and as for her mouth, Mr. Pendennis has given me subsequently to understand, that it was of a staring red color, with which the most brilliant geranium, sealing-wax, or guardsman's coat, could not vie. "And very warm," continued this empress and Queen of Sheba. Mr. Pen again assented, and the conversation rolled on in this manner. She asked Costigan whether he had had a pleasant evening at the George, and he recounted the supper and the tumblers of punch. Then the father asked her how she had been employing the morning. "Bows came," said she, "at ten, and we studied Ophalia. It's for the twenty-fourth, when I hope, sir, we shall have the honor of seeing ye." "Indeed, indeed, you will," Mr. Pendennis cried, wondering that she should say "Ophalia," and speak with an Irish inflection of voice naturally, who had not the least Hibernian accent on the stage. "I've secured 'um for your benefit, dear," said the captain, tapping his waistcoat pocket, wherein lay Pen's sovereigns, and winking at Pen with one eye, at which the boy blushed. "Mr. – the gentleman's very obleging," said Mrs. Haller. "My name is Pendennis," said Pen, blushing. "I – I – hope you'll – you'll remember it." His heart thumped so as he made this audacious declaration, that he almost choked in uttering it. "Pendennis," she answered slowly, and looking him full in the eyes, with a glance so straight, so clear, so bright, so killing, with a voice so sweet, so round, so low, that the word and the glance shot Pen through and through, and perfectly transfixed him with pleasure. "I never knew the name was so pretty before," Pen said. "'Tis a very pretty name," Ophelia said. "Pentweazle's not a pretty name. Remember, papa, when we were on the Norwich Circuit, Young Pentweazle, who used to play second old men, and married Miss Rancy, the Columbine; they're both engaged in London now, at the Queen's, and get five pounds a week. Pentweazle wasn't his real name. 'Twas Judkin gave it him, I don't know why. His name was Harrington; that is, his real name was Potts; fawther a clergyman, very respectable. Harrington was in London, and got in debt. Ye remember, he came out in Falkland, to Mrs. Bunce's Julia." "And a pretty Julia she was," the captain interposed; "a woman of fifty, and a mother of ten children. 'Tis you ought to have been Julia, or my name's not Jack Costigan." "I didn't take the leading business then," Miss Fotheringay said, modestly; "I wasn't fit for't till Bows taught me." "True for you, my dear," said the captain: and bending to Pendennis, he added, "Rejuced in circumstances, sir, I was for some time a fencing master in Dublin (there's only three men in the empire could touch me with the foil once, but Jack Costigan's getting old and stiff now, sir); and my daughter had an engagement at the thayater there; and 'twas there that my friend, Mr. Bows, who saw her capabilities, and is an uncommon 'cute man, gave her lessons in the dramatic art, and made her what ye see. What have ye done since Bows went, Emily?" "Sure, I've made a pie," Emily said, with perfect simplicity. She, pronounced it "poy." "If ye'll try it at four o'clock, sir, say the word," said Costigan, gallantly. "That girl, sir, makes the best veal and ham pie in England, and I think I can promise ye a glass of punch of the right flavor." Pen had promised to be at home to dinner at six o'clock, but the rascal thought he could accommodate pleasure and duty in this point, and was only too eager to accept this invitation. He looked on with delight and wonder while Ophelia busied herself about the room, and prepared for the dinner. She arranged the glasses, and laid and smoothed the little cloth, all which duties she performed with a quiet grace and good humor, which enchanted her guest more and more. The "poy" arrived from the baker's, in the hands of one of the little choir-boy's brothers, at the proper hour: and at four o'clock, Pen found himself at dinner – actually at dinner with the greatest tragic actress in the world, and her father – with the handsomest woman in all creation – with his first and only love, whom he had adored ever since when? – ever since yesterday, ever since forever. He ate a crust of her making, he poured her out a glass of beer, he saw her drink a glass of punch – just one wine-glass full – out of the tumbler which she mixed for her papa. She was perfectly good-natured, and offered to mix one for Pendennis too. It was prodigiously strong; Pen had never in his life drunk so much spirits and water. Was it the punch, or the punch-maker who intoxicated him? During dinner, when the captain, whom his daughter treated most respectfully, ceased prattling about himself and his adventures, Pen tried to engage the Fotheringay in conversation about poetry and about her profession. He asked her what she thought of Ophelia's madness, and whether she was in love with Hamlet or not? "In love with such a little ojous wretch as that stunted manager of a Bingley?" She bristled with indignation at the thought. Pen explained it was not of her he spoke, but of Ophelia of the play. "Oh, indeed; if no offense was meant, none was taken; but as for Bingley, indeed, she did not value him – not that glass of punch." Pen next tried her on Kotzebue. "Kotzebue? who was he?" – "The author of the play in which she had been performing so admirably." "She did not know that – the man's name at the beginning of the book was Thompson," she said. Pen laughed at her adorable simplicity. He told her of the melancholy fate of the author of the play, and how Sand had killed him. It was for the first time in her life that Miss Costigan had ever heard of Mr. Kotzebue's existence, but she looked as if she was very much interested, and her sympathy sufficed for honest Pen. And in the midst of this simple conversation, the hour and a quarter which poor Pen could afford to allow himself, passed away only too quickly; and he had taken leave, he was gone, and away on his rapid road homeward on the back of Rebecca. She was called upon to show her mettle in the three journeys which she made that day. "What was that he was talking about, the madness of Hamlet, and the theory of the great German critic on the subject?" Emily asked of her father. "'Deed then I don't know, Milly dear," answered the captain. "We'll ask Bows when he comes." "Anyhow, he's a nice, fair-spoken, pretty young man," the lady said: "how many tickets did he take of you?" "'Fait, then, he took six, and gev me two guineas, Milly," the captain said, "I suppose them young chaps is not too flush of coin." "He's full of book-learning," Miss Fotheringay continued. "Kotzebue! He, he, what a droll name indeed, now; and the poor fellow killed by Sand, too! Did ye ever hear such a thing? I'll ask Bows about it, papa, dear." "A queer death, sure enough," ejaculated the captain, and changed the painful theme. "'Tis an elegant mare the young gentleman rides," Costigan went on to say; "and a grand breakfast, intirely, that young Mister Foker gave us." "He's good for two private boxes, and at least twenty tickets, I should say," cried the daughter, a prudent lass, who always kept her fine eyes on the main chance. "I'll go bail of that," answered the papa; and so their conversation continued awhile, until the tumbler of punch was finished; and their hour of departure soon came, too; for at half past six Miss Fotheringay was to appear at the theater again, whither her father always accompanied her; and stood, as we have seen, in the side-scene watching her, and drank spirits-and-water in the green-room with the company there. "How beautiful she is," thought Pen, cantering homeward. "How simple and how tender! How charming it is to see a woman of her commanding genius busying herself with the delightful, though humble, offices of domestic life, cooking dishes to make her old father comfortable, and brewing drink for him with her delicate fingers! How rude it was of me to begin to talk about professional matters, and how well she turned the conversation! By-the-way, she talked about professional matters herself; but then with what fun and humor she told the story of her comrade, Pentweazle, as he was called! There is no humor like Irish humor. Her father is rather tedious, but thoroughly amiable; and how fine of him, giving lessons in fencing after he quitted the army, where he was the pet of the Duke of Kent! Fencing! I should like to continue my fencing, or I shall forget what Angelo taught me. Uncle Arthur always liked me to fence – he says it is the exercise of a gentleman. Hang it. I'll take some lessons of Captain Costigan. Go along, Rebecca – up the hill, old lady. Pendennis, Pendennis – how she spoke the word! Emily, Emily! how good, how noble, how beautiful, how perfect, she is!" Now the reader, who has had the benefit of overhearing the entire conversation which Pen had with Miss Fotheringay, can judge for himself about the powers of her mind, and may perhaps be disposed to think that she has not said any thing astonishingly humorous or intellectual in the course of the above interview. She has married, and taken her position in the world as a most spotless and irreproachable lady since, and I have had the pleasure of making her acquaintance: and must certainly own, against my friend Pen's opinion, that his adored Emily is not a clever woman. The truth is, she had not only never heard of Kotzebue, but she had never heard of Farquhar, or Congreve, or any dramatist in whose plays she had not a part: and of these dramas she only knew that part which concerned herself. A wag once told her that Dante was born at Algiers: and asked her – which Dr. Johnson wrote first, "Irene," or "Every Man in his Humor." But she had the best of the joke, for she had never heard of Irene, or Every Man in his Humor, or Dante, or perhaps Algiers. It was all one to her. She acted what little Bows told her – where he told her to sob, she sobbed – where he told her to laugh, she laughed. She gave the tirade or the repartee without the slightest notion of its meaning. She went to church and goes every Sunday, with a reputation perfectly intact, and was (and is) as guiltless of sense as of any other crime. But what did our Pen know of these things? He saw a pair of bright eyes, and he believed in them – a beautiful image, and he fell down and worshiped it. He supplied the meaning which her words wanted; and created the divinity which he loved. Was Titania the first who fell in love with an ass, or Pygmalion the only artist who has gone crazy about a stone? He had found her; he had found what his soul thirsted after. He flung himself into the stream and drank with all his might. Let those say who have been thirsty once how delicious that first draught is. As he rode down the avenue toward home, Pen shrieked with laughter, as he saw the Reverend Mr. Smirke once more coming demurely away from Fairoaks on his pony. Smirke had dawdled and staid at the cottages on the way, and then dawdled with Laura over her lessons – and then looked at Mrs. Pendennis's gardens and improvements until he had perfectly bored out that lady: and he had taken his leave at the very last minute without that invitation to dinner which he fondly expected. Pen was full of kindness and triumph. "What, picked up and sound?" he cried out, laughing. "Come along back, old fellow, and eat my dinner – I have had mine: but we will have a bottle of the old wine and drink her health, Smirke." Poor Smirke turned the pony's head round, and jogged along with Arthur. His mother was charmed to see him in such high spirits, and welcomed Mr. Smirke for his sake, when Arthur said he had forced the curate back to dine. He gave a most ludicrous account of the play of the night before, and of the acting of Bingley the Manager, in his ricketty Hessians, and the enormous Mrs. Bingley as the Countess, in rumpled green satin and a Polish cap: he mimicked them, and delighted his mother and little Laura, who clapped her hands with pleasure. "And Mrs. Haller?" said Mrs. Pendennis. "She's a stunner, ma'am," Pen said, laughing, and using the words of his reverend friend, Mr. Foker. "A what, Arthur?" asked the lady. "What is a stunner, Arthur?" cried Laura, in the same voice. So he gave them a queer account of Mr. Foker, and how he used to be called Vats and Grains, and by other contumelious names at school, and how he was now exceedingly rich, and a Fellow Commoner at St. Boniface. But gay and communicative as he was, Mr. Pen did not say one syllable about his ride to Chatteries that day, or about the new friends whom he had made there. When the two ladies retired, Pen, with flashing eyes, filled up two great bumpers of Madeira, and looking Smirke full in the face said, "Here's to her!" "Here's to her," said the curate with a sigh, lifting the glass: and emptying it, so that his face was a little pink when he put it down. Pen had even less sleep that night than on the night before. In the morning, and almost before dawn, he went out and saddled that unfortunate Rebecca himself, and rode her on the Downs like mad. Again Love had roused him – and said, "Awake Pendennis, I am here." That charming fever – that delicious longing – and fire, and uncertainty; he hugged them to him – he would not have lost them for all the world. CHAPTER VI. CONTAINS BOTH LOVE AND WAR Cicero and Euripides did not occupy Mr. Pen much for some time after this, and honest Mr. Smirke had a very easy time with his pupil. Rebecca was the animal who suffered most in the present state of Pen's mind for, besides those days when he could publicly announce his intention of going to Chatteries to take a fencing-lesson, and went thither with the knowledge of his mother, whenever he saw three hours clear before him, the young rascal made a rush for the city, and found his way to Prior's Lane. He was as frantic with vexation when Rebecca went lame, as Richard at Bosworth, when his horse was killed under him: and got deeply into the books of the man who kept the hunting stables at Chatteries for the doctoring of his own, and the hire of another animal. Then, and perhaps once in a week, under pretense of going to read a Greek play with Smirke, this young reprobate set off so as to be in time for the Competitor down coach, staid a couple of hours in Chatteries, and returned on the Rival which left for London at ten at night. Once his secret was nearly lost by Smirke's simplicity, of whom Mrs. Pendennis asked whether they had read a great deal the night before, or a question to that effect. Smirke was about to tell the truth, that he had never seen Mr. Pen at all, when the latter's boot-heel came grinding down on Mr. Smirke's toe under the table, and warned the curate not to betray him. They had had conversations on the tender subject of course. It is good sport (if you are not yourself engaged in the conversation) to hear two men in love talk. There must be a confidant and depositary somewhere. When informed, under the most solemn vows of secrecy, of Pen's condition of mind, the curate said, with no small tremor, "that he hoped it was no unworthy object – no unlawful attachment, which Pen had formed" – for if so, the poor fellow felt it would be his duty to break his vow and inform Pen's mother, and then there would be a quarrel, he felt, with sickening apprehension, and he would never again have a chance of seeing what he most liked in the world. "Unlawful, unworthy!" Pen bounced out at the curate's question. "She is as pure as she is beautiful; I would give my heart to no other woman. I keep the matter a secret in my family, because – because – there are reasons of a weighty nature which I am not at liberty to disclose. But any man who breathes a word against her purity insults both her honor and mine, and – and dammy, I won't stand it." Smirke, with a faint laugh, only said, "Well, well, don't call me out, Arthur, for you know I can't fight;" but by this compromise the wretched curate was put more than ever into the power of his pupil, and the Greek and mathematics suffered correspondingly. If the reverend gentleman had had much discernment, and looked into the poet's corner of the County Chronicle, as it arrived in the Wednesday's bag, he might have seen "Mrs. Haller," "Passion and Genius," "Lines to Miss Fotheringay, of the Theater Royal," appearing every week; and other verses of the most gloomy, thrilling, and passionate cast. But as these poems were no longer signed NEP. by their artful composer, but subscribed EROS; neither the tutor nor Helen, the good soul, who cut all her son's verses out of the paper, knew that Nep. was no other than that flaming Eros, who sang so vehemently the character of the new actress. "Who is the lady," at last asked Mrs. Pendennis, "whom your rival is always singing in the County Chronicle. He writes something like you, dear Pen, but yours is much the best. Have you seen Miss Fotheringay?" Pen said yes, he had; that night he went to see the "Stranger," she acted Mrs. Haller. By the way she was going to have a benefit, and was to appear in Ophelia – suppose we were to go – Shakspeare you know, mother – we can get horses from the Clavering Arms. Little Laura sprang up with delight, she longed for a play. Pen introduced "Shakspeare you know," because the deceased Pendennis, as became a man of his character, professed an uncommon respect for the bard of Avon, in whose works he safely said there was more poetry than in all "Johnson's Poets" put together. And though Mr. Pendennis did not much read the works in question, yet he enjoined Pen to peruse them, and often said what pleasure he should have, when the boy was of a proper age, in taking him and his mother to see some good plays of the immortal poet. The ready tears welled up in the kind mother's eyes as she remembered these speeches of the man who was gone. She kissed her son fondly, and said she would go. Laura jumped for joy. Was Pen happy? – was he ashamed? As he held his mother to him, he longed to tell her all, but he kept his counsel. He would see how his mother liked her; the play should be the thing, and he would try his mother like Hamlet's. Helen, in her good humor, asked Mr. Smirke to be of the party. That ecclesiastic had been bred up by a fond parent at Clapham, who had an objection to dramatic entertainments, and he had never yet seen a play. But, Shakspeare! – but to go with Mrs. Pendennis in her carriage, and sit a whole night by her side! – he could not resist the idea of so much pleasure, and made a feeble speech, in which he spoke of temptation and gratitude, and finally accepted Mrs. Pendennis's most kind offer. As he spoke he gave her a look, which made her exceedingly uncomfortable. She had seen that look more than once, of late, pursuing her. He became more positively odious every day in the widow's eyes. We are not going to say a great deal about Pen's courtship of Miss Fotheringay, for the reader has already had a specimen of her conversation, much of which need surely not be reported. Pen sate with her hour after hour, and poured forth all his honest boyish soul to her. Every thing he knew, or hoped, or felt, or had read, or fancied, he told to her. He never tired of talking and longing. One after another, as his thoughts rose in his hot eager brain, he clothed them in words, and told them to her. Her part of the tête-à-tête was not to talk, but to appear as if she understood what Pen talked (a difficult matter, for the young fellow blurted out no small quantity of nonsense), and to look exceedingly handsome and sympathizing. The fact is, while he was making one of his tirades – and delighted, perhaps, and wondering at his own eloquence, the lad would go on for twenty minutes at a time – the lovely Emily, who could not comprehend a tenth part of his talk, had leisure to think about her own affairs, and would arrange, in her own mind how they should dress the cold mutton, or how she would turn the black satin, or make herself out of her scarf a bonnet like Miss Thackthwaite's new one, and so forth. Pen spouted Byron and Moore; passion and poetry: her business was to throw up her eyes, or fixing them for a moment on his face, to cry, "Oh, 'tis beautiful! Ah, how exquisite! Repeat those lines again." And off the boy went, and she returned to her own simple thoughts about the turned gown, or the hashed mutton. In fact Pen's passion was not long a secret from the lovely Emily or her father. Upon his second visit, his admiration was quite evident to both of them, and on his departure the old gentleman said to his daughter, as he winked at her over his glass of grog, "Faith, Milly darling, I think ye've hooked that chap." "Pooh, 'tis only a boy, papa dear," Milly remarked. "Sure he's but a child." Pen would have been very much pleased if he had heard that phrase – he was galloping home wild with pleasure, and shouting out her name as he rode. "Ye've hooked 'um any how," said the captain, "and let me tell ye he's not a bad fish. I asked Tom at the George, and Flint, the grocer, where his mother dales – fine fortune – drives in her chariot – splendid park and grounds – Fairoaks Park – only son – property all his own at twenty-one – ye might go further and not fare so well, Miss Fotheringay." "Them boys are mostly talk," said Milly, seriously. "Ye know at Dublin how ye went on about young Poldoody, and I've a whole desk full of verses he wrote me when he was in Trinity College; but he went abroad, and his mother married him to an Englishwoman." "Lord Poldoody was a young nobleman; and in them it's natural: and ye weren't in the position in which ye are now, Milly dear. But ye mustn't encourage this young chap too much, for, bedad, Jack Costigan wont have any thrifling with his daughter." "No more will his daughter, papa, you may be sure of that," Milly said. "A little sip more of the punch – sure, 'tis beautiful. Ye needn't be afraid about the young chap – I think I'm old enough to take care of myself, Captain Costigan." So Pen used to come day after day, rushing in and galloping away, and growing more wild about the girl with every visit. Sometimes the captain was present at their meetings; but having a perfect confidence in his daughter, he was more often inclined to leave the young couple to themselves, and cocked his hat over his eye, and strutted off on some errand when Pen entered. How delightful these interviews were! The captain's drawing-room was a low wainscoted room, with a large window looking into the dean's garden. There Pen sate and talked – and talked to Emily, looking beautiful as she sate at her work – looking beautiful and calm, and the sunshine came streaming in at the great windows, and lighted up her superb face and form. In the midst of the conversation, the great bell would begin to boom, and he would pause, smiling, and be silent until the sound of the vast music died away – or the rooks in the cathedral elms would make a great noise toward sunset – or the sound of the organ and the choristers would come over the quiet air, and gently hush Pen's talking. By the way, it must be said, that Miss Fotheringay, in a plain shawl and a close bonnet and vail, went to church every Sunday of her life, accompanied by her indefatigable father, who gave the responses in a very rich and fine brogue, joined in the psalms and chanting, and behaved in the most exemplary manner. Little Bows, the house-friend of the family, was exceedingly wroth at the notion of Miss Fotheringay's marriage with a stripling seven or eight years her junior. Bows, who was a cripple, and owned that he was a little more deformed even than Bingley the manager, so that he could not appear on the stage, was a singular wild man of no small talents and humor. Attracted first by Miss Fotheringay's beauty he began to teach her how to act. He shrieked out in his cracked voice the parts, and his pupil learned them from his lips by rote, and repeated them in her full rich tones. He indicated the attitudes, and set and moved those beautiful arms of hers. Those who remember this grand actress on the stage can recall how she used always precisely the same gestures, looks, and tones: how she stood on the same plank of the stage in the same position, rolled her eyes at the same instant and to the same degree, and wept with precisely the same heart-rending pathos, and over the same pathetic syllable. And after she had come out trembling with emotion before the audience, and looking so exhausted and tearful that you fancied she would faint with sensibility, she would gather up her hair the instant she was behind the curtain, and go home to a mutton chop and a glass of brown stout; and the harrowing labors of the day over, she went to bed and snored as resolutely and as regularly as a porter. Bows then, was indignant at the notion that his pupil should throw her chances away in life by bestowing her hand upon a little country squire. As soon as a London manager saw her, he prophesied that she would get a London engagement, and a great success. The misfortune was that the London managers had seen her. She had played in London three years before, and failed from utter stupidity. Since then it was that Bows had taken her in hand and taught her part after part. How he worked and screamed, and twisted, and repeated lines over and over again, and with what indomitable patience and dullness she followed him! She knew that he made her: and let herself be made. She was not grateful, or ungrateful, or unkind, or ill-humored. She was only stupid; and Pen was madly in love with her. The post-horses from the Clavering Arms arrived in due time, and carried the party to the theater at Chatteries, where Pen was gratified in perceiving that a tolerably large audience was assembled. The young gentlemen from Baymouth had a box, in the front of which sate Mr. Foker and his friend Mr. Spavin splendidly attired in the most full-blown evening costume. They saluted Pen in a cordial manner, and examined his party, of which they approved, for little Laura was a pretty little red-cheeked girl with a quantity of shining brown ringlets, and Mrs. Pendennis, dressed in black velvet with the diamond cross which she sported on great occasions, looked uncommonly handsome and majestic. Behind these sate Mr. Arthur, and the gentle Smirke, with the curl reposing on his fair forehead, and his white tie in perfect order. He blushed to find himself in such a place – but how happy was he to be there. He and Mrs. Pendennis brought books of "Hamlet" with them to follow the tragedy, as is the custom of honest country-folks who go to a play in state. Samuel, coachman, groom, and gardener to Mr. Pendennis took his place in the pit, where Mr. Foker's man was also visible. It was dotted with non-commissioned officers of the Dragoons, whose band, by kind permission of Colonel Swallowtail, were as usual in the orchestra; and that corpulent and distinguished warrior himself, with his Waterloo medal and a number of his young men, made a handsome show in the boxes. "Who is that odd-looking person bowing to you, Arthur?" Mrs. Pendennis asked of her son. Pen blushed a great deal. "His name is Captain Costigan, ma'am," he said – a "Peninsular officer." In fact, it was the captain in a new shoot of clothes, as he called them, and with a large pair of white kid gloves, one of which he waved to Pendennis, while he laid the other sprawling over his heart and coat buttons. Pen did not say any more. And how was Mrs. Pendennis to know that Mr. Costigan was the father of Miss Fotheringay? Mr. Hornbull, from London, was the Hamlet of the night, Mr. Bingley modestly contenting himself with the part of Horatio, and reserving his chief strength for William in "Black-Eyed Susan," which was the second piece. We have nothing to do with the play: except to say, that Ophelia looked lovely, and performed with admirable wild pathos: laughing, weeping, gazing wildly, waving her beautiful white arms, and flinging about her snatches of flowers and songs with the most charming madness. What an opportunity her splendid black hair had of tossing over her shoulders! She made the most charming corpse ever seen; and while Hamlet and Laertes were battling in her grave, she was looking out from the back scenes with some curiosity toward Pen's box, and the family party assembled in it. There was but one voice in her praise there. Mrs. Pendennis was in ecstasies with her beauty. Little Laura was bewildered by the piece, and the Ghost, and the play within the play (during which, as Hamlet lay at Ophelia's knee, Pen felt that he would have liked to strangle Mr. Hornbull), but cried out great praises of that beautiful young creature. Pen was charmed with the effect which she produced on his mother – and the clergyman, for his part, was exceedingly enthusiastic. When the curtain fell upon that group of slaughtered personages, who are dispatched so suddenly at the end of "Hamlet," and whose demise astonished poor little Laura not a little, there was an immense shouting and applause from all quarters of the house; the intrepid Smirke, violently excited, clapped his hands, and cried out "Bravo, Bravo," as loud as the Dragoon officers themselves. These were greatly moved —ils s'agitaient sur leurs bancs– to borrow a phrase from our neighbors. They were led cheering into action by the portly Swallowtail, who waved his cap – the non-commissioned officers in the pit, of course, gallantly following their chiefs. There was a roar of bravos rang through the house: Pen bellowing with the loudest, "Fotheringay, Fotheringay!" and Messrs. Spavin and Foker giving the view halloo from their box. Even Mrs. Pendennis began to wave about her pocket-handkerchief, and little Laura danced, laughed, clapped, and looked up at Pen with wonder. Hornbull led the beneficiaire forward amidst bursts of enthusiasm – and she looked so handsome and radiant, with her hair still over her shoulders, that Pen hardly could contain himself for rapture; and he leaned over his mother's chair and shouted, and hurrayed and waved his hat. It was all he could do to keep his secret from Helen, and not say, "Look! That's the woman! Isn't she peerless? I tell you I love her." But he disguised these feelings under an enormous bellowing and hurraying. As for Miss Fotheringay and her behavior, the reader is referred to a former page for an account of that. She went through precisely the same business. She surveyed the house all round with glances of gratitude; and trembled, and almost sank with emotion, over her favorite trap-door. She seized the flowers (Foker discharged a prodigious bouquet at her, and even Smirke made a feeble shy with a rose, and blushed dreadfully when it fell into the pit). She seized the flowers and pressed them to her swelling heart – &c. &c. – in a word – we refer the reader to page 46. Twinkling in her breast poor old Pen saw a locket which he had bought of Mr. Nathan in High-street, with the last shilling he was worth and a sovereign borrowed from Smirke. "Black-Eyed Susan" followed, at which sweet story our gentle-hearted friends were exceedingly charmed and affected: and in which Susan, with a russet gown and a pink ribbon in her cap, looked to the full as lovely as Ophelia. Bingley was great in William. Goll, as the admiral, looked like the figure-head of a seventy-four; and Garbetts, as Captain Boldweather, a miscreant who forms a plan for carrying off Black-eyed Susan, and, waving an immense cocked hat, says, "Come what may, he will be the ruin of her" – all these performed their parts with their accustomed talent; and it was with a sincere regret that all our friends saw the curtain drop down and end that pretty and tender story. If Pen had been alone with his mother in the carriage as they went home, he would have told her all that night; but he sate on the box in the moonshine smoking a cigar by the side of Smirke, who warmed himself with a comforter. Mr. Foker's tandem and lamps whirled by the sober old Clavering posters, as they were a couple of miles on their road home, and Mr. Spavin saluted Mrs. Pendennis's carriage with some considerable variations of Rule Britannia on the key-bugle. It happened two days after the above gayeties that Mr. Dean of Chatteries entertained a few select clerical friends at dinner at his Deanery House. That they drank uncommonly good port wine, and abused the bishop over their dessert, are very likely matters; but with such we have nothing at present to do. Our friend Doctor Portman, of Clavering, was one of the dean's guests, and being a gallant man, and seeing from his place at the mahogany, the dean's lady walking up and down the grass, with her children sporting around her, and her pink parasol over her lovely head – the doctor stepped out of the French windows of the dining-room into the lawn, which skirts that apartment, and left the other white neckcloths to gird at my lord bishop. Then the doctor went up and offered Mrs. Dean his arm, and they sauntered over the ancient velvet lawn, which had been mowed and rolled for immemorial deans, in that easy, quiet, comfortable manner, in which people of middle age and good temper walk after a good dinner, in a calm golden summer evening, when the sun has but just sunk behind the enormous cathedral-towers, and the sickle-shaped moon is growing every instant brighter in the heavens. Now at the end of the dean's garden, there is, as we have stated, Mrs. Creed's house, and the windows of the first-floor room were open to admit the pleasant summer air. A young lady of six-and-twenty, whose eyes were perfectly wide open, and a luckless boy of eighteen, blind with love and infatuation, were in that chamber together; in which persons, as we have before seen them in the same place, the reader will have no difficulty in recognizing Mr. Arthur Pendennis and Miss Costigan. The poor boy had taken the plunge. Trembling with passionate emotion, his heart beating and throbbing fiercely, tears rushing forth in spite of him, his voice almost choking with feeling, poor Pen had said those words which he could withhold no more, and flung himself and his whole store of love, and admiration, and ardor, at the feet of this mature beauty. Is he the first who has done so? Have none before or after him staked all their treasure of life, as a savage does his land and possessions against a draught of the fair-skins' fire-water, or a couple of bauble eyes? "Does your mother know of this, Arthur?" said Miss Fotheringay, slowly. He seized her hand madly, and kissed it a thousand times. She did not withdraw it. "Does the old lady know it?" Miss Costigan thought to herself "well, perhaps she may," and then she remembered what a handsome diamond cross Mrs. Pendennis had on the night of the play, and thought, "sure 'twill go in the family." "Calm yourself, dear Arthur," she said, in her low rich voice, and smiled sweetly and gravely upon him. Then, with her disengaged hand, she put the hair lightly off his throbbing forehead. He was in such a rapture and whirl of happiness that he could hardly speak. At last he gasped out, "My mother has seen you, and admires you beyond measure. She will learn to love you soon: who can do otherwise? She will love you because I do." "'Deed then, I think you do," said Miss Costigan, perhaps with a sort of pity for Pen. Think he did! Of course here Mr. Pen went off into a rhapsody through which, as we have perfect command over our own feelings, we have no reason to follow the lad. Of course, love, truth, and eternity were produced; and words were tried but found impossible to plumb the tremendous depth of his affection. This speech, we say, is no business of ours. It was most likely not very wise, but what right have we to overhear? Let the poor boy fling out his simple heart at the woman's feet, and deal gently with him. It is best to love wisely, no doubt; but to love foolishly is better than not to be able to love at all. Some of us can't; and are proud of our impotence too. At the end of his speech Pen again kissed the imperial hand with rapture – and I believe it was at this very moment, and while Mrs. Dean and Doctor Portman were engaged in conversation, that young Master Ridley Roset, her son, pulled his mother by the back of her capacious dress, and said — "I say, ma! look up there" – and he waggled his innocent head. That was, indeed, a view from the dean's garden such as seldom is seen by deans – or is written in chapters. There was poor Pen performing a salute upon the rosy fingers of his charmer, who received the embrace with perfect calmness and good humor. Master Ridley looked up and grinned, little Miss Rosa looked at her brother, and opened the mouth of astonishment. Mrs. Dean's countenance defied expression, and as for Dr. Portman, when he beheld the scene, and saw his prime favorite and dear pupil Pen, he stood mute with rage and wonder. Mrs. Haller spied the party below at the same moment, and gave a start and a laugh. "Sure there's somebody in the dean's garden," she cried out; and withdrew with perfect calmness, while Pen darted away with his face glowing like coals. The garden party had re-entered the house when he ventured to look out again. The sickle moon was blazing bright in the heavens then, the stars were glittering, the bell of the cathedral tolling nine, the dean's guests (all save one, who had called for his horse Dumpling, and ridden off early) were partaking of tea and buttered cakes in Mrs. Dean's drawing-room – when Pen took leave of Miss Costigan. Pen arrived at home in due time afterward; and was going to slip off to bed, for the poor lad was greatly worn and agitated, and his high-strung nerves had been at almost a maddening pitch – when a summons came to him by John, the old footman, whose countenance bore a very ominous look, that his mother must see him below. On this he tied on his neckcloth again, and went down stairs to the drawing-room. There sate not only his mother, but her friend, the Reverend Doctor Portman. Helen's face looked very pale by the light of the lamp – the doctor's was flushed, on the contrary, and quivering with anger and emotion. Pen saw at once that there was a crisis, and that there had been a discovery. "Now for it," he thought. "Where have you been, Arthur?" Helen said, in a trembling voice. "How can you look that – that dear lady, and a Christian clergyman in the face, sir?" bounced out the doctor, in spite of Helen's pale, appealing looks. "Where has he been? Where his mother's son should have been ashamed to go. For your mother's an angel, sir, an angel. How dare you bring pollution into her house, and make that spotless creature wretched with the thoughts of your crime?" "Sir!" said Pen. "Don't deny it, sir," roared the doctor. "Don't add lies, sir, to your other infamy. I saw you myself, sir. I saw you from the dean's garden. I saw you kissing the hand of that infernal painted – " "Stop," Pen said, clapping his fist on the table, till the lamp flickered up and shook, "I am a very young man, but you will please to remember that I am a gentleman – I will hear no abuse of that lady." "Lady, sir," cried the doctor, "that a lady – you – you – you stand in your mother's presence and call that – that woman a lady! – " "In any body's presence," shouted out Pen. "She is worthy of any place. She is as pure as any woman. She is as good as she is beautiful. If any man but you insulted her, I would tell him what I thought; but as you are my oldest friend, I suppose you have the privilege to doubt of my honor." "No, no, Pen, dearest Pen," cried out Helen in an excess of joy. "I told, I told you, doctor, he was not – not what you thought;" and the tender creature coming trembling forward flung herself on Pen's shoulder. Pen felt himself a man, and a match for all the doctors in doctordom. He was glad this explanation had come. "You saw how beautiful she was," he said to his mother, with a soothing, protecting air, like Hamlet with Gertrude in the play. "I tell you, dear mother, she is as good. When you know her you will say so. She is of all, except you, the simplest, the kindest, the most affectionate of women. Why should she not be on the stage? – She maintains her father by her labor." "Drunken old reprobate," growled the doctor, but Pen did not hear or heed. "If you could see, as I have, how orderly her life is, how pure and pious her whole conduct, you would – as I do – yes, as I do" – (with a savage look at the doctor) – "spurn the slanderer who dared to do her wrong. Her father was an officer, and distinguished himself in Spain. He was a friend of His Royal Highness the Duke of Kent, and is intimately known to the Duke of Wellington, and some of the first officers of our army. He has met my uncle Arthur at Lord Hill's, he thinks. His own family is one of the most ancient and respectable in Ireland, and indeed is as good as our own. The – the Costigans, were kings of Ireland." "Why, God bless my soul," shrieked out the doctor, hardly knowing whether to burst with rage or laughter, "you don't mean to say you want to marry her?" Pen put on his most princely air. "What else, Dr. Portman," he said, "do you suppose would be my desire?" Utterly foiled in his attack, and knocked down by this sudden lunge of Pen's, the doctor could only gasp out, "Mrs. Pendennis, ma'am, send for the major." "Send for the major? with all my heart," said Arthur, Prince of Pendennis and Grand Duke of Fairoaks, with a most superb wave of the hand. And the colloquy terminated by the writing of those two letters which were laid on Major Pendennis's breakfast-table, in London, at the commencement of Prince Arthur's most veracious history. CHAPTER VII. IN WHICH THE MAJOR MAKES HIS APPEARANCE Our acquaintance, Major Arthur Pendennis, arrived in due time at Fairoaks, after a dreary night passed in the mail-coach, where a stout fellow-passenger, swelling preternaturally with great-coats, had crowded him into a corner, and kept him awake by snoring indecently; where a widow lady, opposite, had not only shut out the fresh air by closing all the windows of the vehicle, but had filled the interior with fumes of Jamaica rum and water, which she sucked perpetually from a bottle in her reticule; where, whenever he caught a brief moment of sleep, the twanging of the horn at the turnpike-gates, or the scuffling of his huge neighbor wedging him closer and closer, or the play of the widow's feet on his own tender toes, speedily woke up the poor gentleman to the horrors and realities of life – a life which has passed away now and become impossible, and only lives in fond memories. Eight miles an hour, for twenty or five-and-twenty hours, a tight mail-coach, a hard seat, a gouty tendency, a perpetual change of coachmen grumbling because you did not fee them enough, a fellow-passenger partial to spirits-and-water – who has not borne with these evils in the jolly old times? and how could people travel under such difficulties? And yet they did, and were merry too. Next the widow, and by the side of the major's servant on the roof, were a couple of schoolboys going home for the midsummer holidays, and Major Pendennis wondered to see them sup at the inn at Bagshot, where they took in a cargo of ham, eggs, pie, pickles, tea, coffee, and boiled beef, which surprised the poor major, sipping a cup of very feeble tea, and thinking with a tender dejection that Lord Steyne's dinner was coming off at that very moment. The ingenuous ardor of the boys, however, amused the major, who was very good-natured, and he became the more interested when he found that the one who traveled inside with him, was a lord's son, whose noble father Pendennis, of course, had met in the world of fashion, which he frequented. The little lord slept all night through, in spite of the squeezing, and the horn-blowing, and the widow; and he looked as fresh as paint (and, indeed, pronounced himself to be so) when the major, with a yellow face, a bristly beard, a wig out of curl, and strong rheumatic griefs shooting through various limbs of his uneasy body, descended at the little lodge-gate at Fairoaks where the portress and gardener's wife reverentially greeted him; and, still more respectfully, Mr. Morgan, his man. Helen was on the lookout for this expected guest, and saw him from her window. But she did not come forward immediately to greet him. She knew the major did not like to be seen at a surprise, and required a little preparation before he cared to be visible. Pen, when a boy, had incurred sad disgrace, by carrying off from the major's dressing-table a little morocco box, which it must be confessed contained the major's back teeth, which he naturally would leave out of his jaws in a jolting mail-coach, and without which he would not choose to appear. Morgan, his man, made a mystery of his wigs: curling them in private places: introducing them mysteriously to his master's room; – nor without his head of hair would the major care to show himself to any member of his family or any acquaintance. He went to his apartment then, and supplied these deficiencies; he groaned and moaned, and wheezed, and cursed Morgan through his toilet, as an old buck will, who has been up all night with a rheumatism, and has a long duty to perform. And finally being belted, curled, and set straight, he descended upon the drawing-room, with a grave, majestic air, such as befitted one who was at once a man of business and a man of fashion. Pen was not there, however, only Helen, and little Laura sewing at her knees; and to whom he never presented more than a fore-finger, as he did on this occasion, after saluting his sister-in-law. Laura took the finger, trembling, and dropped it – and then fled out of the room. Major Pendennis did not want to keep her, or indeed to have her in the house at all, and had his private reason for disapproving of her: which we may mention on some future occasion. Meanwhile Laura disappeared and wandered about the premises seeking for Pen; whom she presently found in the orchard, pacing up and down a walk there, in earnest conversation with Mr. Smirke. He was so occupied that he did not hear Laura's clear voice singing out, until Smirke pulled him by the coat, and pointed toward her as she came running. She ran up and put her hand into his. "Come in, Pen," she said, "there's somebody come; uncle Arthur's come." "He is, is he?" said Pen, and she felt him grasp her little hand. He looked round at Smirke with uncommon fierceness, as much as to say, I am ready for him or any man. – Mr. Smirke cast up his eyes as usual and heaved a gentle sigh. "Lead on, Laura," Pen said, with a half fierce half comic air – "Lead on, and say I wait upon my uncle." But he was laughing in order to hide a great anxiety: and was screwing his courage inwardly to face the ordeal which he knew was now before him. Pen had taken Smirke into his confidence in the last two days, and after the outbreak attendant on the discovery of Dr. Portman, and during every one of those forty-eight hours which he had passed in Mr. Smirke's society, had done nothing but talk to his tutor about Miss Fotheringay – Miss Emily Fotheringay – Emily, &c., to all which talk Smirke listened without difficulty, for he was in love himself, most anxious in all things to propitiate Pen, and indeed very much himself enraptured by the personal charms of this goddess, whose like, never having been before at a theatrical representation, he had not beheld until now. Pen's fire and volubility, his hot eloquence and rich poetical tropes and figures, his manly heart, kind, ardent, and hopeful, refusing to see any defects in the person he loved, any difficulties in their position that he might not overcome, half convinced Mr. Smirke that the arrangement proposed by Mr. Pen was a very feasible and prudent one and that it would be a great comfort to have Emily settled at Fairoaks, Captain Costigan in the yellow room, established for life there, and Pen married at eighteen. And it is a fact that in these two days, the boy had almost talked over his mother too; had parried all her objections one after another with that indignant good sense which is often the perfection of absurdity and had brought her almost to acquiesce in the belief that if the marriage was doomed in heaven, why doomed it was – that if the young woman was a good person, it was all that she, for her part, had to ask; and rather to dread the arrival of the guardian uncle who, she foresaw, would regard Mr. Pen's marriage in a manner very different to that simple, romantic, honest, and utterly absurd way, in which the widow was already disposed to look at questions of this sort. For as in the old allegory of the gold and silver shield, about which the two knights quarreled, each is right according to the point from which he looks: so about marriage; the question whether it is foolish or good, wise or otherwise, depends upon the point of view from which you regard it. If it means a snug house in Belgravia, and pretty little dinner parties, and a pretty little brougham to drive in the Park, and a decent provision, not only for the young people, but for the little Belgravians to come; and if these are the necessaries of life (and they are with many honest people), to talk of any other arrangement is an absurdity: of love in lodgings – a babyish folly of affection: that can't pay coach-hire or afford a decent milliner – as mere wicked balderdash and childish romance. If, on the other hand your opinion is that people, not with an assured subsistence, but with a fair chance to obtain it, and with the stimulus of hope, health, and strong affection, may take the chance of fortune for better or worse, and share its good or its evil together, the polite theory then becomes an absurdity in its turn: worse than an absurdity, a blasphemy almost, and doubt of Providence; and a man who waits to make his chosen woman happy, until he can drive her to church in a neat little carriage with a pair of horses, is no better than a coward or a trifler, who is neither worthy of love nor of fortune. I don't say that the town folks are not right, but Helen Pendennis was a country bred woman, and the book of life, as she interpreted it, told her a different story to that page which is read in cities. Like most soft and sentimental women, match-making, in general, formed a great part of her thoughts, and I dare say she had begun to speculate about her son's falling in love and marrying long before the subject had ever entered into the brains of the young gentleman. It pleased her (with that dismal pleasure which the idea of sacrificing themselves gives to certain women), to think of the day when she would give up all to Pen, and he should bring his wife home, and she would surrender the keys and the best bed-room, and go and sit at the side of the table, and see him happy. What did she want in life but to see the lad prosper? As an empress certainly was not too good for him, and would be honored by becoming Mrs. Pen; so if he selected humble Esther instead of Queen Vashti, she would be content with his lordship's choice. Never mind how lowly or poor the person might be who was to enjoy that prodigious honor, Mrs. Pendennis was willing to bow before her and welcome her, and yield her up the first place. But an actress – a mature woman, who had long ceased blushing except with rouge, as she stood under the eager glances of thousands of eyes – an illiterate and ill-bred person, very likely, who must have lived with light associates, and have heard doubtful conversation – Oh! it was hard that such a one should be chosen, and that the matron should be deposed to give place to such a Sultana. All these doubts the widow laid before Pen during the two days which had of necessity to elapse ere the uncle came down; but he met them with that happy frankness and ease which a young gentleman exhibits at his time of life, and routed his mother's objections with infinite satisfaction to himself. Miss Costigan was a paragon of virtue and delicacy; she was as sensitive as the most timid maiden; she was as pure as the unsullied snow; she had the finest manners, the most graceful wit and genius, the most charming refinement and justness of appreciation in all matters of taste; she had the most admirable temper and devotion to her father, a good old gentleman of high family and fallen fortunes, who had lived, however, with the best society in Europe: he was in no hurry, and could afford to wait any time – till he was one-and-twenty. But he felt (and here his face assumed an awful and harrowing solemnity) that he was engaged in the one only passion of his life, and that DEATH alone could close it. Helen told him, with a sad smile and shake of the head, that people survived these passions, and as for long engagements contracted between very young men and old women – she knew an instance in her own family – Laura's poor father was an instance – how fatal they were. Mr. Pen, however, was resolved that death must be his doom in case of disappointment, and rather than this – rather than balk him, in fact – this lady would have submitted to any sacrifice or personal pain, and would have gone down on her knees and have kissed the feet of a Hottentot daughter-in-law. Arthur knew his power over the widow, and the young tyrant was touched while he exercised it. In those two days he brought her almost into submission, and patronized her very kindly; and he passed one evening with the lovely pie-maker at Chatteries, in which he bragged of his influence over his mother; and he spent the other night in composing a most flaming and conceited copy of verses to his divinity, in which he vowed, like Montrose, that he would make her famous with his sword and glorious by his pen, and that he would love her as no mortal woman had been adored since the creation of womankind. It was on that night, long after midnight, that wakeful Helen, passing stealthily by her son's door, saw a light streaming through the chink of the door into the dark passage, and heard Pen tossing and tumbling, and mumbling verses in his bed. She waited outside for a while, anxiously listening to him. In infantile fevers and early boyish illnesses, many a night before, the kind soul had so kept watch. She turned the lock very softly now, and went in so gently, that Pen for a moment did not see her. His face was turned from her. His papers on his desk were scattered about, and more were lying on the bed round him. He was biting a pencil and thinking of rhymes and all sorts of follies and passions. He was Hamlet jumping into Ophelia's grave; he was the Stranger taking Mrs. Haller to his arms, beautiful Mrs. Haller with the raven ringlets falling over her shoulders. Despair and Byron, Thomas Moore and all the Loves of the Angels, Waller and Herrick, Beranger and all the love-songs he had ever read, were working and seething in this young gentleman's mind, and he was at the very height and paroxysm of the imaginative frenzy, when his mother found him. "Arthur," said the mother's soft silver voice: and he started up and turned round. He clutched some of the papers and pushed them under the pillow. "Why don't you go to sleep, my dear?" she said, with a sweet tender smile, and sate down on the bed and took one of his hot hands. Pen looked at her wildly for an instant – "I couldn't sleep," he said – "I – I was – I was writing." – And hereupon he flung his arms round her neck and said, "O mother! I love her, I love her!" – How could such a kind soul as that help soothing and pitying him? The gentle creature did her best: and thought with a strange wonderment and tenderness, that it was only yesterday that he was a child in that bed: and how she used to come and say her prayers over it before he woke upon holiday mornings. They were very grand verses, no doubt, although Miss Fotheringay did not understand them; but old Cos, with a wink and a knowing finger on his nose, said, "Put them up with th' other letthers, Milly darling. Poldoody's pomes was nothing to this." So Milly locked up the manuscripts. When, then, the major being dressed and presentable, presented himself to Mrs. Pendennis, he found in the course of ten minutes' colloquy that the poor widow was not merely distressed at the idea of the marriage contemplated by Pen, but actually more distressed at thinking that the boy himself was unhappy about it, and that his uncle and he should have any violent altercation on the subject. She besought Major Pendennis to be very gentle with Arthur: "He has a very high spirit, and will not brook unkind words," she hinted. "Dr. Portman spoke to him very roughly – and I must own unjustly, the other night – for my dearest boy's honor is as high as any mother can desire – but Pen's answer quite frightened me, it was so indignant. Recollect he is a man now; and be very – very cautious," said the widow, laying a fair long hand on the major's sleeve. He took it up, kissed it gallantly, and looked in her alarmed face with wonder, and a scorn which he was too polite to show. "Bon dieu!" thought the old negotiator, "the boy has actually talked the woman round, and she'd get him a wife as she would a toy, if master cried for it. Why are there no such things as lettres-de-cachet– and a Bastile for young fellows of family?" The major lived in such good company that he might be excused for feeling like an earl. – He kissed the widow's timid hand, pressed it in both his, and laid it down on the table with one of his own over it, as he smiled and looked her in the face. "Confess," said he, "now that you are thinking how you possibly can make it up to your conscience to let the boy have his own way." She blushed, and was moved, in the usual manner of females. "I am thinking that he is very unhappy; and I am too – " "To contradict him or to let him have his own wish?" asked the other; and added, with great comfort to his inward self, "I'm d – d if he shall." "To think that he should have formed so foolish and cruel and fatal an attachment," the widow said, "which can but end in pain whatever be the issue." "The issue shan't be marriage, my dear sister," the major said, resolutely. "We're not going to have a Pendennis, the head of the house, marry a strolling mountebank from a booth. No, no, we won't marry into Greenwich Fair, ma'am." "If the match is broken suddenly off," the widow interposed, "I don't know what may be the consequence. I know Arthur's ardent temper, the intensity of his affections, the agony of his pleasures and disappointments, and I tremble at this one, if it must be. Indeed, indeed, it must not come on him too suddenly." "My dear madam," the major said, with an air of the deepest commiseration, "I've no doubt Arthur will have to suffer confoundedly before he gets over the little disappointment. But is he, think you, the only person who has been so rendered miserable?" "No, indeed," said Helen, holding down her eyes. She was thinking of her own case, and was at that moment seventeen again, and most miserable. "I, myself," whispered her brother-in-law, "have undergone a disappointment in early life. A young woman with fifteen thousand pounds, niece to an earl – most accomplished creature – a third of her money would have run up my promotion in no time, and I should have been a lieutenant-colonel at thirty: but it might not be. I was but a penniless lieutenant: her parents interfered, and I embarked for India – where I had the honor of being secretary to Lord Buckley, when commander-in-chief – without her. What happened? We returned our letters, sent back our locks of hair (the major here passed his fingers through his wig), we suffered, but we recovered. She is now a baronet's wife with thirteen grown-up children: altered, it is true, in person; but her daughters remind me of what she was, and the third is to be presented early next week." Helen did not answer. She was still thinking of old times. I suppose if one lives to be a hundred, there are certain passages of one's early life whereof the recollection will always carry us back to youth again, and that Helen was thinking of one of these. "Look at my own brother, my dear creature," the major continued gallantly: "he himself, you know, had a little disappointment when he started in the – the medical profession – an eligible opportunity presented itself. Miss Balls, I remember the name, was daughter of an apoth – a practitioner in very large practice; my brother had very nearly succeeded in his suit. – But difficulties arose: disappointments supervened, and – and I am sure he had no reason to regret the disappointment, which gave him this hand," said the major, and he once more politely pressed Helen's fingers. "Those marriages between people of such different rank and age," said Helen, "are sad things. I have known them produce a great deal of unhappiness. – Laura's father, my cousin, who – who was brought up with me" – she added in a low voice, "was an instance of that." "Most injudicious," cut in the major. "I don't know any thing more painful than for a man to marry his superior in age or his inferior in station. Fancy marrying a woman of a low rank of life, and having your house filled with her confounded tag-rag-and-bobtail of relations! Fancy your wife attached to a mother who dropped her h's, or called Maria Marire! How are you to introduce her into society? My dear Mrs. Pendennis, I will name no names, but in the very best circles of London society I have seen men suffering the most excruciating agony, I have known them to be cut, to be lost entirely, from the vulgarity of their wives' connections. What did Lady Snapperton do last year at her déjeuné dansant after the Bohemian Ball? She told Lord Brouncker that he might bring his daughters or send them with a proper chaperon, but that she would not receive Lady Brouncker: who was a druggist's daughter, or some such thing, and as Tom Wagg remarked of her, never wanted medicine certainly, for she never had an h in her life. Good Ged, what would have been the trifling pang of a separation in the first instance to the enduring infliction of a constant misalliance and intercourse with low people?" "What, indeed!" said Helen, dimly disposed toward laughter, but yet checking the inclination, because she remembered in what prodigious respect her deceased husband held Major Pendennis and his stories of the great world. "Then this fatal woman is ten years older than that silly young scapegrace of an Arthur. What happens in such cases, my dear creature? I don't mind telling you, now we are alone: that in the highest state of society, misery, undeviating misery, is the result. Look at Lord Clodworthy come into a room with his wife – why, good Ged, she looks like Clodworthy's mother. What's the case between Lord and Lady Willowbank, whose love match was notorious? He has already cut her down twice when she has hanged herself out of jealousy for Mademoiselle de Sainte Cunegonde, the dancer; and mark my words, good Ged, one day he'll not cut the old woman down. No, my dear madam, you are not in the world, but I am: you are a little romantic and sentimental (you know you are – women with those large beautiful eyes always are); you must leave this matter to my experience. Marry this woman! Marry at eighteen an actress of thirty – bah, bah! – I would as soon he sent into the kitchen and married the cook." "I know the evils of premature engagements," sighed out Helen: and as she made this allusion no less than thrice in the course of the above conversation, and seems to be so oppressed with the notion of long engagements and unequal marriages, and as the circumstance we have to relate will explain what perhaps some persons are anxious to know, namely, who little Laura is, who has appeared more than once before us, it will be as well to clear up these points in another chapter. CHAPTER VIII. IN WHICH PEN IS KEPT WAITING AT THE DOOR, WHILE THE READER IS INFORMED WHO LITTLE LAURA WAS Once upon a time, then, there was a young gentleman of Cambridge University who came to pass the long vacation at the village where young Helen Thistlewood was living with her mother, the widow of the lieutenant slain at Copenhagen. – This gentleman – whose name was the Reverend Francis Bell – was nephew to Mrs. Thistlewood, and by consequence, own cousin to Miss Helen, so that it was very right that he should take lodgings in his aunt's house, who lived in a very small way; and there he passed the long vacation, reading with three or four pupils who accompanied him to the village. Mr. Bell was fellow of a college, and famous in the University for his learning and skill as a tutor. His two kinswomen understood pretty early that the reverend gentleman was engaged to be married, and was only waiting for a college living to enable him to fulfill his engagement. His intended bride was the daughter of another parson, who had acted as Mr. Bell's own private tutor in Bell's early life, and it was while under Mr. Coacher's roof, indeed, and when only a boy of seventeen or eighteen years of age, that the impetuous young Bell had flung himself at the feet of Miss Martha Coacher, whom he was helping to pick peas in the garden. On his knees, before those peas and her, he pledged himself to an endless affection. Miss Coacher was by many years the young fellow's senior; and her own heart had been lacerated by many previous disappointments in the matrimonial line. No less than three pupils of her father had trifled with those young affections. The apothecary of the village had despicably jilted her. The dragoon officer, with whom she had danced so many times during that happy season which she passed at Bath with her gouty grandmamma, one day gayly shook his bridle-rein, and galloped away, never to return. Wounded by the shafts of repeated ingratitude, can it be wondered at that the heart of Martha Coacher should pant to find rest somewhere? She listened to the proposals of the gawky, gallant, honest boy, with great kindness and good-humor; at the end of his speech she said, "Law, Bell, I'm sure you are too young to think of such things;" but intimated that she too would revolve them in her own virgin bosom. She could not refer Mr. Bell to her mamma, for Mr. Coacher was a widower, and being immersed in his books, was of course unable to take the direction of so frail and wondrous an article as a lady's heart, which Miss Martha had to manage for herself. A lock of her hair, tied up in a piece of blue ribbon, conveyed to the happy Bell the result of the Vestal's conference with herself. Thrice before had she snipt off one of her auburn ringlets, and given them away. The possessors were faithless, but the hair had grown again; and Martha had indeed occasion to say that men were deceivers, when she handed over this token of love to the simple boy. Number 6, however, was an exception to former passions – Francis Bell was the most faithful of lovers. When his time arrived to go to college, and it became necessary to acquaint Mr. Coacher of the arrangements that had been made, the latter cried, "God bless my soul, I hadn't the least idea what was going on!" as was indeed very likely, for he had been taken in three times before in precisely a similar manner; and Francis went to the University resolved to conquer honors, so as to be able to lay them at the feet of his beloved Martha. This prize in view made him labor prodigiously. News came, term after term, of the honors he won. He sent the prize-books for his college essays to old Coacher, and his silver declamation cup to Miss Martha. In due season he was high among the Wranglers, and a fellow of his college; and during all the time of these transactions a constant tender correspondence was kept up with Miss Coacher, to whose influence, and perhaps with justice, he attributed the successes which he had won. By the time, however, when the Rev. Francis Bell, M.A., and fellow and tutor of his college, was twenty-six years of age, it happened that Miss Coacher was thirty-four, nor had her charms, her manners, or her temper improved since that sunny day in the spring-time of life when he found her picking peas in the garden. Having achieved his honors, he relaxed in the ardor of his studies, and his judgment and taste also perhaps became cooler. The sunshine of the pea-garden faded away from Miss Martha, and poor Bell found himself engaged – and his hand pledged to that bond in a thousand letters – to a coarse, ill-tempered, ill-favored, ill-mannered, middle-aged woman. It was in consequence of one of many altercations (in which Martha's eloquence shone, and in which therefore she was frequently pleased to indulge) that Francis refused to take his pupils to Bearleader's Green, where Mr. Coacher's living was, and where Bell was in the habit of spending the summer; and he bethought him that he would pass the vacation at his aunt's village, which he had not seen for many years – not since little Helen was a girl and used to sit on his knee. Down then he came and lived with them. Helen was grown a beautiful young woman now. The cousins were nearly four months together, from June to October. They walked in the summer evenings; they met in the early morn. They read out of the same book when the old lady dozed at night over the candles. What little Helen knew, Frank taught her. She sang to him: she gave her artless heart to him. She was aware of all his story. Had he made any secret? – had he not shown the picture of the woman to whom he was engaged, and with a blush – her letters, hard, eager, and cruel? – The days went on and on, happier and closer, with more kindness, more confidence, and more pity. At last one morning in October came when Francis went back to college, and the poor girl felt that her tender heart was gone with him. Frank too wakened up from the delightful midsummer-dream to the horrible reality of his own pain. He gnashed and tore at the chain which bound him. He was frantic to break it and be free. Should he confess? – give his savings to the woman to whom he was bound, and beg his release? – there was time yet – he temporized. No living might fall in for years to come. The cousins went on corresponding sadly and fondly: the betrothed woman, hard, jealous, and dissatisfied, complaining bitterly, and with reason, of her Francis's altered tone. At last things came to a crisis, and the new attachment was discovered. Francis owned it, cared not to disguise it, rebuked Martha with her violent temper and angry imperiousness, and, worst of all, with her inferiority and her age. Her reply was, that if he did not keep his promise she would carry his letters into every court in the kingdom – letters in which his love was pledged to her ten thousand times; and, after exposing him to the world as the perjurer and traitor he was, she would kill herself. Frank had one more interview with Helen, whose mother was dead then, and who was living companion with old Lady Pontypool – one more interview, where it was resolved that he was to do his duty; that is, to redeem his vow; that is, to pay a debt cozened from him by a sharper; that is, to make two honest people miserable. So the two judged their duty to be, and they parted. The living fell in only too soon; but yet Frank Bell was quite a gray and worn-out man when he was inducted into it, Helen wrote him a letter on his marriage, beginning "My dear cousin," and ending "always truly yours." She sent him back the other letters, and the lock of his hair – all but a small piece. She had it in her desk when she was talking to the major. Bell lived for three or four years in his living, at the end of which time, the Chaplainship of Coventry Island falling vacant, Frank applied for it privately, and having procured it, announced the appointment to his wife. She objected, as she did to every thing. He told her bitterly that he did not want her to come: so she went. Bell went out in Governor Crawley's time, and was very intimate with that gentleman in his later years. And it was in Coventry Island, years after his own marriage, and five years after he had heard of the birth of Helen's boy, that his own daughter was born. She was not the daughter of the first Mrs. Bell, who died of island fever very soon after Helen Pendennis and her husband, to whom Helen had told every thing, wrote to inform Bell of the birth of their child. "I was old, was I?" said Mrs. Bell the first; "I was old, and her inferior, was I? but I married you, Mr. Bell, and kept you from marrying her?" and hereupon she died. Bell married a colonial lady, whom he loved fondly. But he was not doomed to prosper in love; and, this lady dying in child-birth, Bell gave up too: sending his little girl home to Helen Pendennis and her husband, with a parting prayer that they would befriend her. The little thing came to Fairoaks from Bristol, which is not very far off, dressed in black, and in company of a soldier's wife, her nurse, at parting from whom she wept bitterly. But she soon dried up her grief under Helen's motherly care. Round her neck she had a locket with hair, which Helen had given, ah, how many years ago! to poor Francis, dead and buried. This child was all that was left of him, and she cherished, as so tender a creature would, the legacy which he had bequeathed to her. The girl's name, as his dying letter stated, was Helen Laura. But John Pendennis, though he accepted the trust, was always rather jealous of the orphan; and gloomily ordered that she should be called by her own mother's name; and not by that first one which her father had given her. She was afraid of Mr. Pendennis, to the last moment of his life. And it was only when her husband was gone that Helen dared openly to indulge in the tenderness which she felt for the little girl. Thus it was that Laura Bell became Mrs. Pendennis's daughter. Neither her husband nor that gentleman's brother, the major, viewed her with very favorable eyes. She reminded the first of circumstances in his wife's life which he was forced to accept, but would have forgotten much more willingly: and as for the second, how could he regard her? She was neither related to his own family of Pendennis, nor to any nobleman in this empire, and she had but a couple of thousand pounds for her fortune. And now let Mr. Pen come in, who has been waiting all this while. Having strung up his nerves, and prepared himself, without at the door, for the meeting, he came to it, determined to face the awful uncle. He had settled in his mind that the encounter was to be a fierce one, and was resolved on bearing it through with all the courage and dignity of the famous family which he represented. And he flung open the door and entered with the most severe and warlike expression, armed cap-à-pié as it were, with lance couched and plumes displayed, and glancing at his adversary, as if to say, "Come on, I'm ready." The old man of the world, as he surveyed the boy's demeanor, could hardly help a grin at his admirable, pompous simplicity. Major Pendennis too, had examined his ground; and finding that the widow was already half won over to the enemy, and having a shrewd notion that threats and tragic exhortations would have no effect upon the boy, who was inclined to be perfectly stubborn and awfully serious, the major laid aside the authoritative manner at once, and with the most good-humored natural smile in the world, held out his hands to Pen, shook the lad's passive fingers gayly, and said, "Well Pen, my boy, tell us all about it." Helen was delighted with the generosity of the major's good humor. On the contrary, it quite took aback and disappointed poor Pen, whose nerves were strung up for a tragedy, and who felt that his grand entrée was altogether balked and ludicrous. He blushed and winced with mortified vanity and bewilderment. He felt immensely inclined to begin to cry – "I – I – I didn't know that you were come till just now," he said: "is – is – town very full, I suppose?" If Pen could hardly gulp his tears down, it was all the major could do to keep from laughter. He turned round and shot a comical glance at Mrs. Pendennis, who too felt that the scene was at once ridiculous and sentimental. And so, having nothing to say, she went up and kissed Mr. Pen: as he thought of her tenderness and soft obedience to his wishes, it is very possible too the boy was melted. "What a couple of fools they are," thought the old guardian. "If I hadn't come down, she would have driven over in state to pay a visit and give her blessing to the young lady's family." "Come, come," said he still grinning at the couple, "let us have as little sentiment as possible, and Pen, my good fellow, tell us the whole story." Pen got back at once to his tragic and heroical air. "The story is, sir," said he, "as I have written it to you before. I have made the acquaintance of a most beautiful and most virtuous lady; of a high family, although in reduced circumstances: I have found the woman in whom I know that the happiness of my life is centered; I feel that I never, never can think about any woman but her. I am aware of the difference of our ages and other difficulties in my way. But my affection was so great that I felt I could surmount all these; – that we both could: and she has consented to unite her lot with mine, and to accept my heart and my fortune." "How much is that, my boy?" said the major. "Has any body left you some money? I don't know that you are worth a shilling in the world." "You know what I have is his," cried out Mrs. Pendennis. "Good heavens, madam, hold your tongue!" was what the guardian was disposed to say; but he kept his temper, not without a struggle. "No doubt, no doubt," he said. "You would sacrifice any thing for him. Every body knows that. But it is, after all, then, your fortune which Pen is offering to the young lady; and of which he wishes to take possession at eighteen." "I know my mother will give me any thing," Pen said, looking rather disturbed. "Yes, my good fellow, but there is reason in all things. If your mother keeps the house, it is but fair that she should select her company. When you give her house over her head, and transfer her banker's account to yourself for the benefit of Miss What-d'-you-call-'em – Miss Costigan – don't you think you should at least have consulted my sister as one of the principal parties in the transaction? I am speaking to you, you see, without the least anger or assumption of authority, such as the law and your father's will give me over you for three years to come – but as one man of the world to another, – and I ask you, if you think that, because you can do what you like with your mother, therefore you have a right to do so! As you are her dependent, would it not have been more generous to wait before you took this step, and at least to have paid her the courtesy to ask her leave?" Pen held down his head, and began dimly to perceive that the action on which he had prided himself as a most romantic, generous instance of disinterested affection, was perhaps a very selfish and headstrong piece of folly. "I did it in a moment of passion," said Pen, floundering; "I was not aware what I was going to say or to do" (and in this he spoke with perfect sincerity). "But now it is said, and I stand to it. No; I neither can nor will recall it. I'll die rather than do so. And I – I don't want to burthen my mother," he continued. "I'll work for myself. I'll go on the stage and act with her. She – she says I should do well there." "But will she take you on those terms?" the major interposed. "Mind, I do not say that Miss Costigan is not the most disinterested of women: but, don't you suppose, now, fairly, that your position as a young gentleman of ancient birth and decent expectations, forms a part of the cause why she finds your addresses welcome?" "I'll die, I say, rather than forfeit my pledge to her," said Pen, doubling his fists and turning red. "Who asks you, my dear friend?" answered the imperturbable guardian. "No gentleman breaks his word, of course, when it has been given freely. But after all, you can wait. You owe something to your mother, something to your family – something to me as your father's representative." "Oh, of course," Pen said, feeling rather relieved. "Well, as you have pledged your word to her, give us another, will you, Arthur?" "What is it?" Arthur asked. "That you will make no private marriage – that you won't be taking a trip to Scotland, you understand." "That would be a falsehood. Pen never told his mother a falsehood," Helen said. Pen hung down his head again, and his eyes filled with tears of shame. Had not this whole intrigue been a falsehood to that tender and confiding creature who was ready to give up all for his sake? He gave his uncle his hand. "No, sir – on my word of honor, as a gentleman," he said, "I will never marry without my mother's consent!" and giving Helen a bright parting look of confidence and affection unchangeable, the boy went out of the drawing-room into his own study. "He's an angel – he's an angel," the mother cried out, in one of her usual raptures. "He comes of a good stock, ma'am," said her brother-in-law – "of a good stock on both sides." The major was greatly pleased with the result of his diplomacy – so much so, that he once more saluted the tips of Mrs. Pendennis's glove, and dropping the curt, manly, and straightforward tone in which he had conducted the conversation with the lad, assumed a certain drawl which he always adopted when he was most conceited and fine. "My dear creature," said he, in that his politest tone, "I think it certainly as well that I came down, and I flatter myself that last botte was a successful one. I tell you how I came to think of it. Three years ago my kind friend Lady Ferrybridge sent for me in the greatest state of alarm about her son Gretna, whose affair you remember, and implored me to use my influence with the young gentleman, who was engaged in an affaire de c[oe]ur with a Scotch clergyman's daughter, Miss MacToddy. I implored, I entreated gentle measures. But Lord Ferrybridge was furious, and tried the high hand. Gretna was sulky and silent, and his parents thought they had conquered. But what was the fact, my dear creature? The young people had been married for three months before Lord Ferrybridge knew any thing about it. And that was why I extracted the promise from Master Pen." "Arthur would never have done so," Mrs. Pendennis said. "He hasn't – that is one comfort," answered the brother-in-law. Like a wary and patient man of the world, Major Pendennis did not press poor Pen any farther for the moment, but hoped the best from time, and that the young fellow's eyes would be opened before long to see the absurdity of which he was guilty. And having found out how keen the boy's point of honor was, he worked kindly upon that kindly feeling with great skill, discoursing him over their wine after dinner, and pointing out to Pen the necessity of a perfect uprightness and openness in all his dealings, and entreating that his communications with his interesting young friend (as the major politely called Miss Fotheringay) should be carried on with the knowledge, if not approbation, of Mrs. Pendennis. "After all, Pen," the major said, with a convenient frankness that did not displease the boy, while it advanced the interests of the negotiator, "you must bear in mind that you are throwing yourself away. Your mother might submit to your marriage, as she would to any thing else you desired, if you did but cry long enough for it: but be sure of this, that it can never please her. You take a young woman off the boards of a country theater and prefer her, for such is the case, to one of the finest ladies in England. And your mother will submit to your choice, but you can't suppose that she will be happy under it. I have often fancied, entre nous, that my sister had it in her eye to make a marriage between you and that little ward of hers – Flora, Laura – what's her name? And I always determined to do my small endeavor to prevent any such match. The child has but two thousand pounds, I am given to understand. It is only with the utmost economy and care that my sister can provide for the decent maintenance of her house, and for your appearance and education as a gentleman; and I don't care to own to you that I had other and much higher views for you. With your name and birth, sir – with your talents, which I suppose are respectable, with the friends whom I have the honor to possess, I could have placed you in an excellent position – a remarkable position for a young man of such exceeding small means, and had hoped to see you, at least, try to restore the honors of our name. Your mother's softness stopped one prospect, or you might have been a general, like our gallant ancestor who fought at Ramillies and Malplaquet. I had another plan in view: my excellent and kind friend, Lord Bagwig, who is very well disposed toward me, would, I have little doubt, have attached you to his mission at Pumpernickel, and you might have advanced in the diplomatic service. But, pardon me for recurring to the subject; how is a man to serve a young gentleman of eighteen, who proposes to marry a lady of thirty, whom he has selected from a booth in a fair? – well, not a fair – a barn. That profession at once is closed to you. The public service is closed to you. Society is closed to you. You see, my good friend, to what you bring yourself. You may get on at the bar, to be sure, where I am given to understand that gentlemen of merit occasionally marry out of their kitchens; but in no other profession. Or you may come and live down here – down here, mon Dieu! forever" (said the major, with a dreary shrug, as he thought with inexpressible fondness of Pall Mall), "where your mother will receive the Mrs. Arthur that is to be, with perfect kindness; where the good people of the county won't visit you; and where, by Gad, sir, I shall be shy of visiting you myself, for I'm a plain-spoken man, and I own to you that I like to live with gentlemen for my companions; where you will have to live, with rum-and-water-drinking gentlemen-farmers, and drag through your life the young husband of an old woman, who, if she doesn't quarrel with your mother, will at least cost that lady her position in society, and drag her down into that dubious caste into which you must inevitably fall. It is no affair of mine, my good sir. I am not angry. Your downfall will not hurt me farther than that it will extinguish the hopes I had of seeing my family once more taking its place in the world. It is only your mother and yourself that will be ruined. And I pity you both from my soul. Pass the claret: it is some I sent to your poor father; I remember I bought it at poor Lord Levant's sale. But of course," added the major, smacking the wine, "having engaged yourself, you will do what becomes you as a man of honor, however fatal your promise may be. However, promise us on our side, my boy, what I set out by entreating you to grant – that there shall be nothing clandestine, that you will pursue your studies, that you will only visit your interesting friend at proper intervals. Do you write to her much?" Pen blushed and said, "Why, yes, he had written." "I suppose verses, eh! as well as prose? I was a dab at verses myself. I recollect when I first joined, I used to write verses for the fellows in the regiment; and did some pretty things in that way. I was talking to my old friend General Hobbler about some lines I dashed off for him in the year 1806, when we were at the Cape, and, Gad, he remembered every line of them still; for he'd used 'em so often, the old rogue, and had actually tried 'em on Mrs. Hobbler, sir – who brought him sixty thousand pounds. I suppose you've tried verses, eh, Pen?" Pen blushed again, and said, "Why, yes, he had written verses." "And does the fair one respond in poetry or prose?" asked the major, eying his nephew with the queerest expression, as much as to say, "O Moses and green spectacles! what a fool the boy is." Pen blushed again. She had written, but not in verse, the young lover owned, and he gave his breast-pocket the benefit of a squeeze with his left arm, which the major remarked, according to his wont. "You have got the letters there, I see," said the old campaigner, nodding at Pen, and pointing to his own chest (which was manfully wadded with cotton by Mr. Stultz). "You know you have. I would give twopence to see 'em." "Why," said Pen, twiddling the stalks of the strawberries, "I – I," but this sentence never finished; for Pen's face was so comical and embarrassed, as the major watched it, that the elder could contain his gravity no longer, and burst into a fit of laughter, in which chorus Pen himself was obliged to join after a minute: when he broke out fairly into a guffaw. It sent them with great good humor into Mrs. Pendennis's drawing-room. She was pleased to hear them laughing in the hall as they crossed it. "You sly rascal!" said the major, putting his arm gayly on Pen's shoulder, and giving a playful push at the boy's breast-pocket. He felt the papers crackling there, sure enough. The young fellow was delighted – conceited – triumphant – and, in one word, a spoony. The pair came to the tea-table in the highest spirits. The major's politeness was beyond expression. He had never tasted such good tea, and such bread was only to be had in the country. He asked Mrs. Pendennis for one of her charming songs. He then made Pen sing, and was delighted and astonished at the beauty of the boy's voice: he made his nephew fetch his map and drawings, and praised them as really remarkable works of talent in a young fellow: he complimented him on his French pronunciation: he flattered the simple boy as adroitly as ever lover flattered a mistress: and when bed time came, mother and son went to their several rooms perfectly enchanted with the kind major. When they had reached those apartments, I suppose Helen took to her knees as usual: and Pen read over his letters before going to bed just as if he didn't know every word of them by heart already. In truth, there were but three of those documents: and to learn their contents required no great effort of memory. In No. 1, Miss Fotheringay presents grateful compliments to Mr. Pendennis, and in her papa's name and her own begs to thank him for his most beautiful presents. They will always be kept carefully; and Miss F. and Captain C. will never forget the delightful evening which they passed on Tuesday last. No. 2, said – Dear sir, we shall have a small quiet party of social friends at our humble board, next Tuesday evening, at an early tea, when I shall wear the beautiful scarf which, with its accompanying delightful verses, I shall ever, ever cherish; and papa bids me say how happy he will be if you will join "the feast of reason and the flow of soul" in our festive little party, as I am sure will be your truly grateful Emily Fotheringay. No. 3 was somewhat more confidential, and showed that matters had proceeded rather far. You were odious yesterday night, the letter said, Why did you not come to the stage-door? Papa could not escort me on account of his eye; he had an accident, and fell down over a loose carpet on the stair on Sunday night. I saw you looking at Miss Diggle all night; and you were so enchanted with Lydia Languish you scarcely once looked at Julia. I could have crushed Bingley, I was so angry. I play Ella Rosenberg on Friday: will you come then? Miss Diggle performs– ever your E. F. These three letters Mr. Pen used to read at intervals, during the day and night, and embrace with that delight and fervor which such beautiful compositions surely warranted. A thousand times at least he had kissed fondly the musky satin paper, made sacred to him by the hand of Emily Fotheringay. This was all he had in return for his passion and flames, his vows and protests, his rhymes and similes, his wakeful nights and endless thoughts, his fondness, fears, and folly. The young wiseacre had pledged away his all for this: signed his name to endless promissory notes, conferring his heart upon the bearer; bound himself for life, and got back twopence as an equivalent. For Miss Costigan was a young lady of such perfect good conduct and self-command, that she never would have thought of giving more, and reserved the treasures of her affection until she could transfer them lawfully at church. Howbeit, Mr. Pen was content with what tokens of regard he had got, and mumbled over his three letters in a rapture of high spirits, and went to sleep delighted with his kind old uncle from London, who must evidently yield to his wishes in time; and, in a word, in a preposterous state of contentment with himself and all the world. CHAPTER IX. IN WHICH THE MAJOR OPENS THE CAMPAIGN Let those who have a real heartfelt relish for London society, and the privilege of an entrée into its most select circles, admit that Major Pendennis was a man of no ordinary generosity and affection, in the sacrifice which he now made. He gave up London in May – his newspapers and his mornings – his afternoons from club to club, his little confidential visits to my ladies, his rides in Rotten Row, his dinners and his stall at the opera, his rapid escapades to Fulham or Richmond on Saturdays and Sundays, his bow from my Lord Duke or my Lord Marquis at the great London entertainments, and his name in the Morning Post of the succeeding day – his quieter little festivals, more select, secret, and delightful – all these he resigned to lock himself into a lone little country house, with a simple widow and a greenhorn of a son, a mawkish curate, and a little girl of ten years of age. He made the sacrifice, and it was the greater that few knew the extent of it. His letters came down franked from town, and he showed the invitations to Helen with a sigh. It was beautiful and tragical to see him refuse one party after another – at least to those who could understand, as Helen didn't, the melancholy grandeur of his self-denial. Helen did not, or only smiled at the awful pathos with which the major spoke of the Court Guide in general: but young Pen looked with great respect at the great names upon the superscriptions of his uncle's letters, and listened to the major's stories about the fashionable world with constant interest and sympathy. The elder Pendennis's rich memory was stored with thousands of these delightful tales, and he poured them into Pen's willing ear with unfailing eloquence. He knew the name and pedigree of every body in the Peerage, and every body's relations. "My dear boy," he would say, with a mournful earnestness and veracity, "you can not begin your genealogical studies too early; I wish to Heavens you would read in Debrett every day. Not so much the historical part (for the pedigrees, between ourselves, are many of them very fabulous, and there are few families that can show such a clear descent as our own) as the account of family alliances, and who is related to whom. I have known a man's career in life blasted, by ignorance on this important, this all-important subject. Why, only last month, at dinner at my Lord Hobanob's, a young man, who has lately been received among us, young Mr. Suckling (author of a work, I believe), began to speak lightly of Admiral Bowser's conduct for ratting to ministers, in what I must own is the most audacious manner. But who do you think sate next and opposite to this Mr. Suckling? Why – why, next to him was Lady Grampound Bowser's daughter, and opposite to him was Lord Grampound Bowser's son-in-law. The infatuated young man went on cutting his jokes at the admiral's expense, fancying that all the world was laughing with him, and I leave you to imagine Lady Hobanob's feelings – Hobanob's! – those of every well-bred man, as the wretched intru was so exposing himself. He will never dine again in South-street. I promise you that." With such discourses the major entertained his nephew, as he paced the terrace in front of the house for his two hours' constitutional walk, or as they sate together after dinner over their wine. He grieved that Sir Francis Clavering had not come down to the park, to live in it since his marriage, and to make a society for the neighborhood. He mourned that Lord Eyrie was not in the country, that he might take Pen and present him to his lordship. "He has daughters," the major said. "Who knows? you might have married Lady Emily or Lady Barbara Trehawk: but all those dreams are over; my poor fellow, you must lie on the bed which you have made for yourself." These things to hear did young Pendennis seriously incline. They are not so interesting in print as when delivered orally; but the major's anecdotes of the great George, of the royal dukes, of the statesmen, beauties, and fashionable ladies of the day, filled young Pen's soul with longing and wonder; and he found the conversations with his guardian, which sadly bored and perplexed poor Mrs. Pendennis, for his own part, never tedious. It can't be said that Mr. Pen's new guide, philosopher and friend, discoursed him on the most elevated subjects, or treated the subjects which he chose in the most elevated manner. But his morality, such as it was, was consistent. It might not, perhaps, tend to a man's progress in another world, but it was pretty well calculated to advance his interests in this: and then it must be remembered, that the major never for one instant doubted that his views were the only views practicable, and that his conduct was perfectly virtuous and respectable. He was a man of honor, in a word; and had his eyes, what he called, open. He took pity on this young greenhorn of a nephew, and wanted to open his eyes too. No man, for instance, went more regularly to church, when in the country, than the old bachelor. "It don't matter so much in town, Pen," he said, "for there the women go, and the men are not missed. But when a gentleman is sur ses terres, he must give an example to the country people; and if I could turn a tune, I even think I should sing. The Duke of Saint David's, whom I have the honor of knowing, always sings in the country, and let me tell you, it has a doosed fine effect from the family pew. And you are somebody down here. As long as the Claverings are away you are the first man in the parish; and as good as any. You might represent the town if you played your cards well. Your poor dear father would have done so had he lived; so might you. – Not if you marry a lady, however amiable, whom the country people won't meet. – Well, well: it's a painful subject. Let us change it, my boy." But if Major Pendennis changed the subject once, he recurred to it a score of times in the day; and the moral of his discourse always was, that Pen was throwing himself away. Now it does not require much coaxing or wheedling to make a simple boy believe that he is a very fine fellow. Pen took his uncle's counsels to heart. He was glad enough, we have said, to listen to his elder's talk. The conversation of Captain Costigan became by no means pleasant to him, and the idea of that tipsy old father-in-law haunted him with terror. He couldn't bring that man, unshaven and reeking of punch, to associate with his mother. Even about Emily – he faltered when the pitiless guardian began to question him. "Was she accomplished?" He was obliged to own, no. "Was she clever?" Well, she had a very good average intellect: but he could not absolutely say she was clever. "Come, let us see some of her letters." So Pen confessed that he had but those three of which we have made mention – and that they were but trivial invitations or answers. "She is cautious enough," the major said, drily. "She is older than you, my poor boy;" and then he apologized with, the utmost frankness and humility, and flung himself upon Pen's good feelings, begging the lad to excuse a fond old uncle, who had only his family's honor in view – for Arthur was ready to flame up in indignation whenever Miss Costigan's honesty was doubted, and swore that he would never have her name mentioned lightly, and never, never would part from her. He repeated this to his uncle and his friends at home, and also, it must be confessed, to Miss Fotheringay and the amiable family at Chatteries, with whom he still continued to spend some portion of his time. Miss Emily was alarmed when she heard of the arrival of Pen's guardian, and rightly conceived that the major came down with hostile intentions to herself. "I suppose ye intend to leave me, now your grand relation, has come down from town. He'll carry ye off, and you'll forget your poor Emily, Mr. Arthur!" Forget her! In her presence, in that of Miss Rouncy, the Columbine and Milly's confidential friend, of the company, in the presence of the captain himself, Pen swore he never could think of any other woman but his beloved Miss Fotheringay; and the captain, looking up at his foils, which were hung as a trophy on the wall of the room where Pen and he used to fence, grimly said, he would not advoise any man to meddle rashly with the affections of his darling child; and would never believe his gallant young Arthur, whom he treated as his son, whom he called his son, would ever be guilty of conduct so revolting to every idaya of honor and humanity. He went up and embraced Pen after speaking. He cried, and wiped his eye with one large dirty hand as he clasped Pen with the other. Arthur shuddered in that grasp, and thought of his uncle at home. His father-in-law looked unusually dirty and shabby; the odor of whisky-and-water was even more decided than in common. How was he to bring that man and his mother together? He trembled when he thought that he had absolutely written to Costigan (inclosing to him a sovereign, the loan of which the worthy gentleman had need), saying, that one day he hoped to sign himself his affectionate son, Arthur Pendennis. He was glad to get away from Chatteries that day; from Miss Rouncy the confidante; from the old toping father-in-law; from the divine Emily herself. "O Emily, Emily," he cried inwardly, as he tattled homeward on Rebecca, "you little know what sacrifices I am making for you! – for you who are always so cold, so cautious, so mistrustful;" and he thought of a character in Pope to whom he had often involuntarily compared her. Pen never rode over to Chatteries upon a certain errand, but the major found out on what errand the boy had been. Faithful to his plan, Major Pendennis gave his nephew no let or hindrance; but somehow the constant feeling that the senior's eye was upon him, an uneasy shame attendant upon that inevitable confession which the evening's conversation would be sure to elicit in the most natural, simple manner, made Pen go less frequently to sigh away his soul at the feet of his charmer than he had been wont to do previous to his uncle's arrival. There was no use trying to deceive him: there was no pretext of dining with Smirke, or reading Greek plays with Foker; Pen felt, when he returned from one of his flying visits, that every body knew whence he came, and appeared quite guilty before his mother and guardian, over their books or their game at picquet. Once having walked out half a mile, to the Fairoaks Inn, beyond the lodge gates, to be in readiness for the Competitor coach, which changed horses there, to take a run for Chatteries, a man on the roof touched his hat to the young gentleman: it was his uncle's man, Mr. Morgan, who was going on a message for his master, and had been took up at the lodge, as he said. And Mr. Morgan came back by the Rival, too; so that Pen had the pleasure of that domestic's company both ways. Nothing was said at home. The lad seemed to have every decent liberty; and yet he felt himself dimly watched and guarded, and that there were eyes upon him even in the presence of his Dulcinea. In fact, Pen's suspicions were not unfounded, and his guardian had sent forth to gather all possible information regarding the lad and his interesting young friend. The discreet and ingenious Mr. Morgan, a London confidential valet, whose fidelity could be trusted, had been to Chatteries more than once, and made every inquiry regarding the past history and present habits of the captain and his daughter. He delicately cross-examined the waiters, the ostlers, and all the inmates of the bar at the George, and got from them what little they knew respecting the worthy captain. He was not held in very great regard there, as it appeared. The waiters never saw the color of his money, and were warned not to furnish the poor gentleman with any liquor for which some other party was not responsible. He swaggered sadly about the coffee-room there, consumed a tooth-pick, and looked over the paper, and if any friend asked him to dinner, he staid. Morgan heard at the George of Pen's acquaintance with Mr. Foker, and he went over to Baymouth to enter into relations with that gentleman's man: but the young student was gone to a Coast Regatta, and his servant, of course, traveled in charge of the dressing-case. From the servants of the officers at the barracks Mr. Morgan found that the captain had so frequently and outrageously inebriated himself there, that Colonel Swallowtail had forbidden him the mess-room. The indefatigable Morgan then put himself in communication with some of the inferior actors at the theater, and pumped them over their cigars and punch, and all agreed that Costigan was poor, shabby, and given to debt and to drink. But there was not a breath upon the reputation of Miss Fotheringay; her father's courage was reported to have displayed itself on more than one occasion toward persons disposed to treat his daughter with freedom. She never came to the theater but with her father; in his most inebriated moments, that gentleman kept a watch over her; finally Mr. Morgan, from his own experience, added that he had been to see her hact, and was uncommon delighted with the performance, besides thinking her a most splendid woman. Mrs. Creed, the pew-opener, confirmed these statements to Doctor Portman, who examined her personally, and threatened her with the terrors of the Church, one day after afternoon service. Mrs. Creed had nothing unfavorable to her lodger to divulge. She saw nobody; only one or two ladies of the theater. The captain did intoxicate himself sometimes, and did not always pay his rent regularly, but he did when he had money, or rather Miss Fotheringay did. Since the young gentleman from Clavering had been and took lessons in fencing, one or two more had come from the barracks: Sir Derby Oaks, and his young friend, Mr. Foker, which was often together: and which was always driving over from Baymouth in the tandem. But on the occasions of the lessons, Miss F. was very seldom present, and generally came down stairs to Mrs. Creed's own room. The doctor and the major consulting together as they often did, groaned in spirit over that information. Major Pendennis openly expressed his disappointment; and, I believe the divine himself was ill-pleased at not being able to pick a hole in poor Miss Fotheringay's reputation. Even about Pen himself, Mrs. Creed's reports were desperately favorable. "Whenever he come," Mrs. Creed said, "she always have me or one of the children with her. And Mrs. Creed, marm, says she, if you please marm, you'll on no account leave the room when that young gentleman's here. And many's the time I've seen him a lookin' as if he wished I was away, poor young man: and he took to coming in service-time, when I wasn't at home, of course: but she always had one of the boys up if her pa wasn't at home, or old Mr. Bowser with her a teaching of her her lesson, or one of the young ladies of the theayter." Конец ознакомительного фрагмента. Текст предоставлен ООО «ЛитРес». Прочитайте эту книгу целиком, купив полную легальную версию (http://www.litres.ru/pages/biblio_book/?art=23145891) на ЛитРес. Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом. [downloadLink] => http://www.litres.ru/static/trials/23/14/58/23145891.txt [litresFileId] => 23145891 [booksFullPath] => /mnt/data/books/107b/6c00/e406/bb51 ) ) ) [1] => Array ( [file] => /mnt/data/litportal.ru/trunk/managers/BookManager.php [line] => 57 [function] => mkdir [args] => Array ( [0] => /mnt/data/books/107b/6c00/e406/bb51 [1] => 511 [2] => 1 ) ) [2] => Array ( [file] => /mnt/data/litportal.ru/trunk/controllers/BooksController.php [line] => 379 [function] => downloadFile [class] => app\managers\BookManager [type] => -> [args] => Array ( [0] => app\models\Book Object ( [_attributes:yii\db\BaseActiveRecord:private] => Array ( [id] => 653268 [external_uid] => 76ce38b2-ff55-11e6-9c73-0cc47a1952f2 [external_id] => 23145891 [external_id_type] => 1 [is_deleted] => 0 [is_active] => 1 [author_id] => 6322 [genre_id] => 5214 [user_id] => [title_ru] => A History of Pendennis. Volume 1. His fortunes and misfortunes, his friends and his greatest enemy [alias] => a-history-of-pendennis-volume-1-his-fortunes-and-misfortunes-his-friends-and-his-greatest-enemy [description] => [lang] => en [year] => 2017 [views_cnt] => 55 [has_trial] => 4 [avatar] => 61/28/32/bc/f3/03/3a/f1/1fc7accdbeef6fc0.jpg [created_at] => 1499372776 [updated_at] => 1581791116 [rating] => 0 [type] => txt [hot] => 0 [new_book_id] => 0 [comments_cnt] => 0 [pub_date] => 2017-03-23 [write_date] => 2017-03-23 ) [_oldAttributes:yii\db\BaseActiveRecord:private] => Array ( [id] => 653268 [external_uid] => 76ce38b2-ff55-11e6-9c73-0cc47a1952f2 [external_id] => 23145891 [external_id_type] => 1 [is_deleted] => 0 [is_active] => 1 [author_id] => 6322 [genre_id] => 5214 [user_id] => [title_ru] => A History of Pendennis. Volume 1. His fortunes and misfortunes, his friends and his greatest enemy [alias] => a-history-of-pendennis-volume-1-his-fortunes-and-misfortunes-his-friends-and-his-greatest-enemy [description] => [lang] => en [year] => 2017 [views_cnt] => 55 [has_trial] => 4 [avatar] => 61/28/32/bc/f3/03/3a/f1/1fc7accdbeef6fc0.jpg [created_at] => 1499372776 [updated_at] => 1581791116 [rating] => 0 [type] => txt [hot] => 0 [new_book_id] => 0 [comments_cnt] => 0 [pub_date] => 2017-03-23 [write_date] => 2017-03-23 ) [_related:yii\db\BaseActiveRecord:private] => Array ( [author] => app\models\Author Object ( [_attributes:yii\db\BaseActiveRecord:private] => Array ( [id] => 6322 [first_name] => Уильям [last_name] => Теккерей [patronymic_name] => Мейкпис [alias] => uilyam-meykpis-tekkerey [litres_unique_id] => 9acf5542-2a93-102a-9ac3-800cba805322 [views_cnt] => 2455 [status] => 1 [created_at] => 1208569508 [books_updated_at] => 1585344338 [books_cnt] => 30 [external_id] => 0 [photo] => 0 [external_alias] => uilyam-meykpis-tekkerey [comments_cnt] => 0 ) [_oldAttributes:yii\db\BaseActiveRecord:private] => Array ( [id] => 6322 [first_name] => Уильям [last_name] => Теккерей [patronymic_name] => Мейкпис [alias] => uilyam-meykpis-tekkerey [litres_unique_id] => 9acf5542-2a93-102a-9ac3-800cba805322 [views_cnt] => 2455 [status] => 1 [created_at] => 1208569508 [books_updated_at] => 1585344338 [books_cnt] => 30 [external_id] => 0 [photo] => 0 [external_alias] => uilyam-meykpis-tekkerey [comments_cnt] => 0 ) [_related:yii\db\BaseActiveRecord:private] => Array ( ) [_relationsDependencies:yii\db\BaseActiveRecord:private] => Array ( ) [_errors:yii\base\Model:private] => [_validators:yii\base\Model:private] => [_scenario:yii\base\Model:private] => default [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => Array ( ) ) ) [_relationsDependencies:yii\db\BaseActiveRecord:private] => Array ( ) [_errors:yii\base\Model:private] => [_validators:yii\base\Model:private] => [_scenario:yii\base\Model:private] => default [_events:yii\base\Component:private] => Array ( [beforeInsert] => Array ( [0] => Array ( [0] => Array ( [0] => yii\behaviors\AttributeBehavior Object ( [attributes] => Array ( [beforeInsert] => Array ( [0] => created_at ) ) [value] => Closure Object ( [this] => app\models\Book Object *RECURSION* ) [skipUpdateOnClean] => 1 [preserveNonEmptyValues] => [owner] => app\models\Book Object *RECURSION* ) [1] => evaluateAttributes ) [1] => ) [1] => Array ( [0] => Array ( [0] => yii\behaviors\AttributeBehavior Object ( [attributes] => Array ( [beforeInsert] => Array ( [0] => updated_at ) [beforeUpdate] => updated_at ) [value] => 1586173679 [skipUpdateOnClean] => 1 [preserveNonEmptyValues] => [owner] => app\models\Book Object *RECURSION* ) [1] => evaluateAttributes ) [1] => ) ) [beforeUpdate] => Array ( [0] => Array ( [0] => Array ( [0] => yii\behaviors\AttributeBehavior Object ( [attributes] => Array ( [beforeInsert] => Array ( [0] => updated_at ) [beforeUpdate] => updated_at ) [value] => 1586173679 [skipUpdateOnClean] => 1 [preserveNonEmptyValues] => [owner] => app\models\Book Object *RECURSION* ) [1] => evaluateAttributes ) [1] => ) ) ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => Array ( [created_at] => yii\behaviors\AttributeBehavior Object ( [attributes] => Array ( [beforeInsert] => Array ( [0] => created_at ) ) [value] => Closure Object ( [this] => app\models\Book Object *RECURSION* ) [skipUpdateOnClean] => 1 [preserveNonEmptyValues] => [owner] => app\models\Book Object *RECURSION* ) [updated_at] => yii\behaviors\AttributeBehavior Object ( [attributes] => Array ( [beforeInsert] => Array ( [0] => updated_at ) [beforeUpdate] => updated_at ) [value] => 1586173679 [skipUpdateOnClean] => 1 [preserveNonEmptyValues] => [owner] => app\models\Book Object *RECURSION* ) ) ) [1] => app\models\BookFile Object ( [_attributes:yii\db\BaseActiveRecord:private] => Array ( [id] => 1401644 [book_id] => 653268 [type] => txt [size] => 248109 [local_path] => 027b/5575/48af/4e04/c54832636da0ce3a.txt [external_file_id] => 23145891 [status] => 1 ) [_oldAttributes:yii\db\BaseActiveRecord:private] => Array ( [id] => 1401644 [book_id] => 653268 [type] => txt [size] => 248109 [local_path] => 027b/5575/48af/4e04/c54832636da0ce3a.txt [external_file_id] => 23145891 [status] => 1 ) [_related:yii\db\BaseActiveRecord:private] => Array ( ) [_relationsDependencies:yii\db\BaseActiveRecord:private] => Array ( ) [_errors:yii\base\Model:private] => [_validators:yii\base\Model:private] => [_scenario:yii\base\Model:private] => default [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => Array ( ) ) [2] => ) ) [3] => Array ( [file] => /mnt/data/litportal.ru/trunk/controllers/BooksController.php [line] => 229 [function] => getBookFileInfo [class] => app\controllers\BooksController [type] => -> [args] => Array ( [0] => app\models\BookFile Object ( [_attributes:yii\db\BaseActiveRecord:private] => Array ( [id] => 1401644 [book_id] => 653268 [type] => txt [size] => 248109 [local_path] => 027b/5575/48af/4e04/c54832636da0ce3a.txt [external_file_id] => 23145891 [status] => 1 ) [_oldAttributes:yii\db\BaseActiveRecord:private] => Array ( [id] => 1401644 [book_id] => 653268 [type] => txt [size] => 248109 [local_path] => 027b/5575/48af/4e04/c54832636da0ce3a.txt [external_file_id] => 23145891 [status] => 1 ) [_related:yii\db\BaseActiveRecord:private] => Array ( ) [_relationsDependencies:yii\db\BaseActiveRecord:private] => Array ( ) [_errors:yii\base\Model:private] => [_validators:yii\base\Model:private] => [_scenario:yii\base\Model:private] => default [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => Array ( ) ) [1] => 4 [2] => app\models\Book Object ( [_attributes:yii\db\BaseActiveRecord:private] => Array ( [id] => 653268 [external_uid] => 76ce38b2-ff55-11e6-9c73-0cc47a1952f2 [external_id] => 23145891 [external_id_type] => 1 [is_deleted] => 0 [is_active] => 1 [author_id] => 6322 [genre_id] => 5214 [user_id] => [title_ru] => A History of Pendennis. Volume 1. His fortunes and misfortunes, his friends and his greatest enemy [alias] => a-history-of-pendennis-volume-1-his-fortunes-and-misfortunes-his-friends-and-his-greatest-enemy [description] => [lang] => en [year] => 2017 [views_cnt] => 55 [has_trial] => 4 [avatar] => 61/28/32/bc/f3/03/3a/f1/1fc7accdbeef6fc0.jpg [created_at] => 1499372776 [updated_at] => 1581791116 [rating] => 0 [type] => txt [hot] => 0 [new_book_id] => 0 [comments_cnt] => 0 [pub_date] => 2017-03-23 [write_date] => 2017-03-23 ) [_oldAttributes:yii\db\BaseActiveRecord:private] => Array ( [id] => 653268 [external_uid] => 76ce38b2-ff55-11e6-9c73-0cc47a1952f2 [external_id] => 23145891 [external_id_type] => 1 [is_deleted] => 0 [is_active] => 1 [author_id] => 6322 [genre_id] => 5214 [user_id] => [title_ru] => A History of Pendennis. Volume 1. His fortunes and misfortunes, his friends and his greatest enemy [alias] => a-history-of-pendennis-volume-1-his-fortunes-and-misfortunes-his-friends-and-his-greatest-enemy [description] => [lang] => en [year] => 2017 [views_cnt] => 55 [has_trial] => 4 [avatar] => 61/28/32/bc/f3/03/3a/f1/1fc7accdbeef6fc0.jpg [created_at] => 1499372776 [updated_at] => 1581791116 [rating] => 0 [type] => txt [hot] => 0 [new_book_id] => 0 [comments_cnt] => 0 [pub_date] => 2017-03-23 [write_date] => 2017-03-23 ) [_related:yii\db\BaseActiveRecord:private] => Array ( [author] => app\models\Author Object ( [_attributes:yii\db\BaseActiveRecord:private] => Array ( [id] => 6322 [first_name] => Уильям [last_name] => Теккерей [patronymic_name] => Мейкпис [alias] => uilyam-meykpis-tekkerey [litres_unique_id] => 9acf5542-2a93-102a-9ac3-800cba805322 [views_cnt] => 2455 [status] => 1 [created_at] => 1208569508 [books_updated_at] => 1585344338 [books_cnt] => 30 [external_id] => 0 [photo] => 0 [external_alias] => uilyam-meykpis-tekkerey [comments_cnt] => 0 ) [_oldAttributes:yii\db\BaseActiveRecord:private] => Array ( [id] => 6322 [first_name] => Уильям [last_name] => Теккерей [patronymic_name] => Мейкпис [alias] => uilyam-meykpis-tekkerey [litres_unique_id] => 9acf5542-2a93-102a-9ac3-800cba805322 [views_cnt] => 2455 [status] => 1 [created_at] => 1208569508 [books_updated_at] => 1585344338 [books_cnt] => 30 [external_id] => 0 [photo] => 0 [external_alias] => uilyam-meykpis-tekkerey [comments_cnt] => 0 ) [_related:yii\db\BaseActiveRecord:private] => Array ( ) [_relationsDependencies:yii\db\BaseActiveRecord:private] => Array ( ) [_errors:yii\base\Model:private] => [_validators:yii\base\Model:private] => [_scenario:yii\base\Model:private] => default [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => Array ( ) ) ) [_relationsDependencies:yii\db\BaseActiveRecord:private] => Array ( ) [_errors:yii\base\Model:private] => [_validators:yii\base\Model:private] => [_scenario:yii\base\Model:private] => default [_events:yii\base\Component:private] => Array ( [beforeInsert] => Array ( [0] => Array ( [0] => Array ( [0] => yii\behaviors\AttributeBehavior Object ( [attributes] => Array ( [beforeInsert] => Array ( [0] => created_at ) ) [value] => Closure Object ( [this] => app\models\Book Object *RECURSION* ) [skipUpdateOnClean] => 1 [preserveNonEmptyValues] => [owner] => app\models\Book Object *RECURSION* ) [1] => evaluateAttributes ) [1] => ) [1] => Array ( [0] => Array ( [0] => yii\behaviors\AttributeBehavior Object ( [attributes] => Array ( [beforeInsert] => Array ( [0] => updated_at ) [beforeUpdate] => updated_at ) [value] => 1586173679 [skipUpdateOnClean] => 1 [preserveNonEmptyValues] => [owner] => app\models\Book Object *RECURSION* ) [1] => evaluateAttributes ) [1] => ) ) [beforeUpdate] => Array ( [0] => Array ( [0] => Array ( [0] => yii\behaviors\AttributeBehavior Object ( [attributes] => Array ( [beforeInsert] => Array ( [0] => updated_at ) [beforeUpdate] => updated_at ) [value] => 1586173679 [skipUpdateOnClean] => 1 [preserveNonEmptyValues] => [owner] => app\models\Book Object *RECURSION* ) [1] => evaluateAttributes ) [1] => ) ) ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => Array ( [created_at] => yii\behaviors\AttributeBehavior Object ( [attributes] => Array ( [beforeInsert] => Array ( [0] => created_at ) ) [value] => Closure Object ( [this] => app\models\Book Object *RECURSION* ) [skipUpdateOnClean] => 1 [preserveNonEmptyValues] => [owner] => app\models\Book Object *RECURSION* ) [updated_at] => yii\behaviors\AttributeBehavior Object ( [attributes] => Array ( [beforeInsert] => Array ( [0] => updated_at ) [beforeUpdate] => updated_at ) [value] => 1586173679 [skipUpdateOnClean] => 1 [preserveNonEmptyValues] => [owner] => app\models\Book Object *RECURSION* ) ) ) ) ) [4] => Array ( [function] => actionRead [class] => app\controllers\BooksController [type] => -> [args] => Array ( ) ) [5] => Array ( [file] => /mnt/data/litportal.ru/trunk/vendor/yiisoft/yii2/base/InlineAction.php [line] => 57 [function] => call_user_func_array [args] => Array ( [0] => Array ( [0] => app\controllers\BooksController Object ( [currentUser] => [layout] => extends.twig [enableCsrfValidation] => 1 [actionParams] => Array ( ) [id] => books [module] => yii\web\Application Object ( [defaultRoute] => site [catchAll] => [controller] => app\controllers\BooksController Object *RECURSION* [_homeUrl:yii\web\Application:private] => [controllerNamespace] => app\controllers [name] => My Application [charset] => UTF-8 [language] => en-US [sourceLanguage] => en-US [layout] => main [requestedRoute] => books/read [requestedAction] => yii\base\InlineAction Object ( [actionMethod] => actionRead [id] => read [controller] => app\controllers\BooksController Object *RECURSION* [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => ) [requestedParams] => Array ( ) [extensions] => Array ( [yiisoft/yii2-swiftmailer] => Array ( [name] => yiisoft/yii2-swiftmailer [version] => 2.0.7.0 [alias] => Array ( [@yii/swiftmailer] => /mnt/data/litportal.ru/trunk/vendor/yiisoft/yii2-swiftmailer ) ) [yiisoft/yii2-twig] => Array ( [name] => yiisoft/yii2-twig [version] => 2.0.6.0 [alias] => Array ( [@yii/twig] => /mnt/data/litportal.ru/trunk/vendor/yiisoft/yii2-twig ) ) [yiisoft/yii2-mongodb] => Array ( [name] => yiisoft/yii2-mongodb [version] => 9999999-dev [alias] => Array ( [@yii/mongodb] => /mnt/data/litportal.ru/trunk/vendor/yiisoft/yii2-mongodb/src ) ) [yiisoft/yii2-bootstrap] => Array ( [name] => yiisoft/yii2-bootstrap [version] => 9999999-dev [alias] => Array ( [@yii/bootstrap] => /mnt/data/litportal.ru/trunk/vendor/yiisoft/yii2-bootstrap/src ) ) [yiisoft/yii2-debug] => Array ( [name] => yiisoft/yii2-debug [version] => 9999999-dev [alias] => Array ( [@yii/debug] => /mnt/data/litportal.ru/trunk/vendor/yiisoft/yii2-debug/src ) ) [yiisoft/yii2-faker] => Array ( [name] => yiisoft/yii2-faker [version] => 9999999-dev [alias] => Array ( [@yii/faker] => /mnt/data/litportal.ru/trunk/vendor/yiisoft/yii2-faker/src ) ) [yiisoft/yii2-gii] => Array ( [name] => yiisoft/yii2-gii [version] => 9999999-dev [alias] => Array ( [@yii/gii] => /mnt/data/litportal.ru/trunk/vendor/yiisoft/yii2-gii/src ) ) ) [bootstrap] => Array ( [0] => log ) [state] => 3 [loadedModules] => Array ( [yii\web\Application] => yii\web\Application Object *RECURSION* ) [_runtimePath:yii\base\Application:private] => /mnt/data/litportal.ru/trunk/runtime [_vendorPath:yii\base\Application:private] => /mnt/data/litportal.ru/trunk/vendor [params] => Array ( [appName] => litportal [projectName] => LitPortal.ru [domainName] => https://litportal.ru [adminEmail] => admin@litportal.ru [noreplyEmail] => noreply@litportal.ru [lfrom] => 123123 [place] => litportal [litresSecretKey] => 1452ddaczGtd463ofruh3kdIIkt095j54knrVfndmMkRsyareR2c2vaFjAxu8d6euBZhjf4bxbsgd,,we/ [kuchaknig_address] => https://www.kuchaknig.ru [auth] => [active_link] => genre ) [id] => basic [module] => [controllerMap] => Array ( ) [_basePath:yii\base\Module:private] => /mnt/data/litportal.ru/trunk [_viewPath:yii\base\Module:private] => [_layoutPath:yii\base\Module:private] => [_modules:yii\base\Module:private] => Array ( ) [_version:yii\base\Module:private] => [_components:yii\di\ServiceLocator:private] => Array ( [errorHandler] => yii\web\ErrorHandler Object ( [maxSourceLines] => 19 [maxTraceSourceLines] => 13 [errorAction] => main/index [errorView] => @yii/views/errorHandler/error.php [exceptionView] => @yii/views/errorHandler/exception.php [callStackItemView] => @yii/views/errorHandler/callStackItem.php [previousExceptionView] => @yii/views/errorHandler/previousException.php [displayVars] => Array ( [0] => _GET [1] => _POST [2] => _FILES [3] => _COOKIE [4] => _SESSION ) [traceLine] => {html} [discardExistingOutput] => 1 [memoryReserveSize] => 262144 [exception] => [_memoryReserve:yii\base\ErrorHandler:private] => xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx [_hhvmException:yii\base\ErrorHandler:private] => [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => ) [request] => yii\web\Request Object ( [enableCsrfValidation] => 1 [csrfParam] => _csrf [csrfCookie] => Array ( [httpOnly] => 1 ) [enableCsrfCookie] => 1 [enableCookieValidation] => 1 [cookieValidationKey] => ertfgw4345tsdfgsdfg [methodParam] => _method [parsers] => Array ( ) [trustedHosts] => Array ( ) [secureHeaders] => Array ( [0] => X-Forwarded-For [1] => X-Forwarded-Host [2] => X-Forwarded-Proto [3] => Front-End-Https [4] => X-Rewrite-Url ) [ipHeaders] => Array ( [0] => X-Forwarded-For ) [secureProtocolHeaders] => Array ( [X-Forwarded-Proto] => Array ( [0] => https ) [Front-End-Https] => Array ( [0] => on ) ) [_cookies:yii\web\Request:private] => [_headers:yii\web\Request:private] => yii\web\HeaderCollection Object ( [_headers:yii\web\HeaderCollection:private] => Array ( [accept-encoding] => Array ( [0] => br,gzip ) [if-modified-since] => Array ( [0] => Thu, 17 Oct 2019 12:53:32 GMT ) [accept-language] => Array ( [0] => en-US,en;q=0.5 ) [accept] => Array ( [0] => text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 ) [user-agent] => Array ( [0] => CCBot/2.0 (https://commoncrawl.org/faq/) ) [x-real-ip] => Array ( [0] => 34.239.172.52 ) [connection] => Array ( [0] => upgrade ) [host] => Array ( [0] => litportal.ru ) ) ) [_rawBody:yii\web\Request:private] => [_bodyParams:yii\web\Request:private] => [_queryParams:yii\web\Request:private] => [_hostInfo:yii\web\Request:private] => [_hostName:yii\web\Request:private] => [_baseUrl:yii\web\Request:private] => [_scriptUrl:yii\web\Request:private] => /index.php [_scriptFile:yii\web\Request:private] => [_pathInfo:yii\web\Request:private] => avtory/thackeray-william-makepeace-10847451/read/page/4/kniga-a-history-of-pendennis-volume-1-his-fortunes-and-misfortunes-his-friends-and-his-greatest-enemy-653268.html [_url:yii\web\Request:private] => /avtory/thackeray-william-makepeace-10847451/read/page/4/kniga-a-history-of-pendennis-volume-1-his-fortunes-and-misfortunes-his-friends-and-his-greatest-enemy-653268.html [_port:yii\web\Request:private] => [_securePort:yii\web\Request:private] => [_contentTypes:yii\web\Request:private] => [_languages:yii\web\Request:private] => [_csrfToken:yii\web\Request:private] => [_isConsoleRequest:yii\base\Request:private] => [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => [_scriptFile:yii\base\Request:private] => ) [log] => yii\log\Dispatcher Object ( [targets] => Array ( [0] => yii\log\FileTarget Object ( [logFile] => /mnt/data/litportal.ru/trunk/runtime/logs/app.log [enableRotation] => 1 [maxFileSize] => 10240 [maxLogFiles] => 5 [fileMode] => [dirMode] => 509 [rotateByCopy] => 1 [categories] => Array ( ) [except] => Array ( ) [logVars] => Array ( [0] => _GET [1] => _POST [2] => _FILES [3] => _COOKIE [4] => _SESSION [5] => _SERVER ) [maskVars] => Array ( [0] => _SERVER.HTTP_AUTHORIZATION [1] => _SERVER.PHP_AUTH_USER [2] => _SERVER.PHP_AUTH_PW ) [prefix] => [exportInterval] => 1000 [messages] => Array ( ) [microtime] => [_levels:yii\log\Target:private] => 3 [_enabled:yii\log\Target:private] => 1 [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => ) ) [_logger:yii\log\Dispatcher:private] => yii\log\Logger Object ( [messages] => Array ( [0] => Array ( [0] => Session started [1] => 4 [2] => yii\web\Session::open [3] => 1586173679.6607 [4] => Array ( ) [5] => 1172968 ) [1] => Array ( [0] => Opening DB connection: mysql:host=localhost;dbname=litportal_new [1] => 4 [2] => yii\db\Connection::open [3] => 1586173679.661 [4] => Array ( ) [5] => 1442328 ) [2] => Array ( [0] => Opening DB connection: mysql:host=localhost;dbname=litportal_new [1] => 80 [2] => yii\db\Connection::open [3] => 1586173679.661 [4] => Array ( ) [5] => 1442704 ) [3] => Array ( [0] => Opening DB connection: mysql:host=localhost;dbname=litportal_new [1] => 96 [2] => yii\db\Connection::open [3] => 1586173679.6614 [4] => Array ( ) [5] => 1453904 ) [4] => Array ( [0] => SELECT * FROM `NEW_books` WHERE `id`='653268' [1] => 4 [2] => yii\db\Command::query [3] => 1586173679.6616 [4] => Array ( ) [5] => 1538904 ) [5] => Array ( [0] => SELECT * FROM `NEW_books` WHERE `id`='653268' [1] => 80 [2] => yii\db\Command::query [3] => 1586173679.6616 [4] => Array ( ) [5] => 1540152 ) [6] => Array ( [0] => SELECT * FROM `NEW_books` WHERE `id`='653268' [1] => 96 [2] => yii\db\Command::query [3] => 1586173679.6619 [4] => Array ( ) [5] => 1545704 ) [7] => Array ( [0] => SELECT * FROM `NEW_books_authors` WHERE `id`=6322 [1] => 4 [2] => yii\db\Command::query [3] => 1586173679.6625 [4] => Array ( ) [5] => 1639064 ) [8] => Array ( [0] => SELECT * FROM `NEW_books_authors` WHERE `id`=6322 [1] => 80 [2] => yii\db\Command::query [3] => 1586173679.6625 [4] => Array ( ) [5] => 1640208 ) [9] => Array ( [0] => SELECT * FROM `NEW_books_authors` WHERE `id`=6322 [1] => 96 [2] => yii\db\Command::query [3] => 1586173679.6627 [4] => Array ( ) [5] => 1643416 ) [10] => Array ( [0] => SELECT * FROM `NEW_books_files` WHERE (`book_id`=653268) AND (`type`='txt') [1] => 4 [2] => yii\db\Command::query [3] => 1586173679.663 [4] => Array ( ) [5] => 1682944 ) [11] => Array ( [0] => SELECT * FROM `NEW_books_files` WHERE (`book_id`=653268) AND (`type`='txt') [1] => 80 [2] => yii\db\Command::query [3] => 1586173679.663 [4] => Array ( ) [5] => 1683880 ) [12] => Array ( [0] => SELECT * FROM `NEW_books_files` WHERE (`book_id`=653268) AND (`type`='txt') [1] => 96 [2] => yii\db\Command::query [3] => 1586173679.6633 [4] => Array ( ) [5] => 1685480 ) ) [flushInterval] => 1000 [traceLevel] => 0 [dispatcher] => yii\log\Dispatcher Object *RECURSION* [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => ) [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => ) [cache] => yii\caching\FileCache Object ( [keyPrefix] => [cachePath] => /mnt/data/litportal.ru/trunk/runtime/cache [cacheFileSuffix] => .bin [directoryLevel] => 1 [gcProbability] => 10 [fileMode] => [dirMode] => 509 [serializer] => [defaultDuration] => 0 [_igbinaryAvailable:yii\caching\Cache:private] => [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => ) [urlManager] => yii\web\UrlManager Object ( [enablePrettyUrl] => 1 [enableStrictParsing] => [rules] => Array ( [0] => yii\web\UrlRule Object ( [name] => admin [pattern] => #^admin$#u [host] => [route] => admin/index [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( ) [_template:yii\web\UrlRule:private] => /admin/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [1] => yii\web\UrlRule Object ( [name] => admin/hashtags [pattern] => #^admin/hashtags$#u [host] => [route] => admin/hash-tags [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( ) [_template:yii\web\UrlRule:private] => /admin/hashtags/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [2] => yii\web\UrlRule Object ( [name] => admin/moderators/add [pattern] => #^admin/moderators/add$#u [host] => [route] => admin/moderators-add-edit [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( ) [_template:yii\web\UrlRule:private] => /admin/moderators/add/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [3] => yii\web\UrlRule Object ( [name] => admin/moderators/edit/ [pattern] => #^admin/moderators/edit/(?P\d+)$#u [host] => [route] => admin/moderators-add-edit [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [abf396750] => id ) [_template:yii\web\UrlRule:private] => /admin/moderators/edit// [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [4] => yii\web\UrlRule Object ( [name] => admin/users/ [pattern] => #^admin/users/(?P\d+)$#u [host] => [route] => admin/user [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [aa76ed395] => user_id ) [_template:yii\web\UrlRule:private] => /admin/users// [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [user_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [5] => yii\web\UrlRule Object ( [name] => admin/genres/ [pattern] => #^admin/genres/(?P\d+)$#u [host] => [route] => admin/books-genre [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a4296d31f] => genre_id ) [_template:yii\web\UrlRule:private] => /admin/genres// [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [genre_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [6] => yii\web\UrlRule Object ( [name] => admin/hashtags/ [pattern] => #^admin/hashtags/(?P\d+)$#u [host] => [route] => admin/hash-tag [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [abad26311] => tag_id ) [_template:yii\web\UrlRule:private] => /admin/hashtags// [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [tag_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [7] => yii\web\UrlRule Object ( [name] => admin/chat-ban/ [pattern] => #^admin/chat-ban/(?P\d+)$#u [host] => [route] => admin/chat-ban-item [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a1255cd1d] => ban_id ) [_template:yii\web\UrlRule:private] => /admin/chat-ban// [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [ban_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [8] => yii\web\UrlRule Object ( [name] => admin/books-comments/ [pattern] => #^admin/books-comments/(?P\d+)$#u [host] => [route] => admin/book-comment [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [af8697d13] => comment_id ) [_template:yii\web\UrlRule:private] => /admin/books-comments// [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [comment_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [9] => yii\web\UrlRule Object ( [name] => admin/photos-comments/ [pattern] => #^admin/photos-comments/(?P\d+)$#u [host] => [route] => admin/photo-comment [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [af8697d13] => comment_id ) [_template:yii\web\UrlRule:private] => /admin/photos-comments// [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [comment_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [10] => yii\web\UrlRule Object ( [name] => admin/diaries-comments/ [pattern] => #^admin/diaries-comments/(?P\d+)$#u [host] => [route] => admin/diary-comment [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [af8697d13] => comment_id ) [_template:yii\web\UrlRule:private] => /admin/diaries-comments// [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [comment_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [11] => yii\web\UrlRule Object ( [name] => admin/photos/ [pattern] => #^admin/photos/(?P\d+)$#u [host] => [route] => admin/photo [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a7e9e4c8c] => photo_id ) [_template:yii\web\UrlRule:private] => /admin/photos// [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [photo_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [12] => yii\web\UrlRule Object ( [name] => admin/diaries/ [pattern] => #^admin/diaries/(?P\d+)$#u [host] => [route] => admin/diary [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [ae020e47a] => diary_id ) [_template:yii\web\UrlRule:private] => /admin/diaries// [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [diary_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [13] => yii\web\UrlRule Object ( [name] => admin/events/ [pattern] => #^admin/events/(?P\d+)$#u [host] => [route] => admin/events [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [abf396750] => id ) [_template:yii\web\UrlRule:private] => /admin/events// [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [14] => yii\web\UrlRule Object ( [name] => admin/books-search-requests/ [pattern] => #^admin/books-search-requests/(?P\d+)$#u [host] => [route] => admin/books-search-request [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a427eb8a5] => request_id ) [_template:yii\web\UrlRule:private] => /admin/books-search-requests// [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [request_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [15] => yii\web\UrlRule Object ( [name] => assets/show_.jpg [pattern] => #^assets/show_(?P\d+)\.jpg$#u [host] => [route] => banners/index [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [abf396750] => id ) [_template:yii\web\UrlRule:private] => /assets/show_.jpg/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [16] => yii\web\UrlRule Object ( [name] => /// [pattern] => #^(?P[\wd-]+)/(?P[\wd-]+)/(?P[\wd-]+)/(?P\d+)$#u [host] => [route] => // [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a0c242628] => module [a4cf2669a] => controller [a47cc8c92] => action [abf396750] => id ) [_template:yii\web\UrlRule:private] => ///// [_routeRule:yii\web\UrlRule:private] => #^(?P[\wd-]+)/(?P[\wd-]+)/(?P[\wd-]+)$#u [_paramRules:yii\web\UrlRule:private] => Array ( [id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( [module] => [controller] => [action] => ) ) [17] => yii\web\UrlRule Object ( [name] => / [pattern] => #^(?P[\wd-]+)/(?P[\wd-]+)$#u [host] => [route] => / [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a4cf2669a] => controller [a47cc8c92] => action ) [_template:yii\web\UrlRule:private] => /// [_routeRule:yii\web\UrlRule:private] => #^(?P[\wd-]+)/(?P[\wd-]+)$#u [_paramRules:yii\web\UrlRule:private] => Array ( ) [_routeParams:yii\web\UrlRule:private] => Array ( [controller] => [action] => ) ) [18] => yii\web\UrlRule Object ( [name] => // [pattern] => #^(?P[\wd-]+)/(?P[\wd-]+)/(?P\d+)$#u [host] => [route] => / [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a4cf2669a] => controller [a47cc8c92] => action [abf396750] => id ) [_template:yii\web\UrlRule:private] => //// [_routeRule:yii\web\UrlRule:private] => #^(?P[\wd-]+)/(?P[\wd-]+)$#u [_paramRules:yii\web\UrlRule:private] => Array ( [id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( [controller] => [action] => ) ) [19] => yii\web\UrlRule Object ( [name] => index.html [pattern] => #^index\.html$#u [host] => [route] => redirect/genre [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( ) [_template:yii\web\UrlRule:private] => /index.html/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [20] => yii\web\UrlRule Object ( [name] => index.php [pattern] => #^index\.php$#u [host] => [route] => redirect/genre [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( ) [_template:yii\web\UrlRule:private] => /index.php/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [21] => yii\web\UrlRule Object ( [name] => genre [pattern] => #^genre(?P\d+)$#u [host] => [route] => redirect/genre [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a6c09ff9d] => r ) [_template:yii\web\UrlRule:private] => /genre/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [r] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [22] => yii\web\UrlRule Object ( [name] => login.html [pattern] => #^login\.html$#u [host] => [route] => auth/login [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( ) [_template:yii\web\UrlRule:private] => /login.html/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [23] => yii\web\UrlRule Object ( [name] => newuser.html [pattern] => #^newuser\.html$#u [host] => [route] => auth/register [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( ) [_template:yii\web\UrlRule:private] => /newuser.html/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [24] => yii\web\UrlRule Object ( [name] => kontakt.html [pattern] => #^kontakt\.html$#u [host] => [route] => main/feedback [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( ) [_template:yii\web\UrlRule:private] => /kontakt.html/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [25] => yii\web\UrlRule Object ( [name] => / [pattern] => #^$#u [host] => [route] => main/index [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( ) [_template:yii\web\UrlRule:private] => [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [26] => yii\web\UrlRule Object ( [name] => avtory//kniga-?-.html [pattern] => #^avtory/(?P[\wd-]+)/kniga-(?P[\wd-]+)?-(?P\d+)\.html$#u [host] => [route] => books/item [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [af7e44b59] => author_alias [aefae7eed] => book_alias [a16a2b381] => book_id ) [_template:yii\web\UrlRule:private] => /avtory//kniga-?-.html/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [author_alias] => #^[\wd-]+$#u [book_alias] => #^[\wd-]+$#u [book_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [27] => yii\web\UrlRule Object ( [name] => avtory//read/page//kniga-?-.html [pattern] => #^avtory/(?P[\wd-]+)/read/page/(?P\d+)/kniga-(?P[\wd-]+)?-(?P\d+)\.html$#u [host] => [route] => books/read [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [af7e44b59] => author_alias [a140ab620] => page [aefae7eed] => book_alias [a16a2b381] => book_id ) [_template:yii\web\UrlRule:private] => /avtory//read/page//kniga-?-.html/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [author_alias] => #^[\wd-]+$#u [page] => #^\d+$#u [book_alias] => #^[\wd-]+$#u [book_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [28] => yii\web\UrlRule Object ( [name] => /author/read/page//book.html [pattern] => #^(?P[\wd-]+)/author(?P\d+)/read/page/(?P\d+)/book(?P\d+)\.html$#u [host] => [route] => redirect/read [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a37338ed9] => genre_type [af675f31b] => author_id [a140ab620] => page [a16a2b381] => book_id ) [_template:yii\web\UrlRule:private] => //author/read/page//book.html/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [genre_type] => #^[\wd-]+$#u [author_id] => #^\d+$#u [page] => #^\d+$#u [book_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [29] => yii\web\UrlRule Object ( [name] => forum//page.html [pattern] => #^forum/(?P[\d]+)/page(?P[\d]+)\.html$#u [host] => [route] => forum/threads [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a29ccbad0] => forum_id [a140ab620] => page ) [_template:yii\web\UrlRule:private] => /forum//page.html/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [forum_id] => #^[\d]+$#u [page] => #^[\d]+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [30] => yii\web\UrlRule Object ( [name] => series/page.html [pattern] => #^series/page(?P[\d]+)\.html$#u [host] => [route] => series/index [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a140ab620] => page ) [_template:yii\web\UrlRule:private] => /series/page.html/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [page] => #^[\d]+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [31] => yii\web\UrlRule Object ( [name] => series/serie.html [pattern] => #^series/serie(?P[\d]+)\.html$#u [host] => [route] => series/serie [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a57167ab4] => sid ) [_template:yii\web\UrlRule:private] => /series/serie.html/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [sid] => #^[\d]+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [32] => yii\web\UrlRule Object ( [name] => series/seriepage.html [pattern] => #^series/serie(?P[\d]+)page(?P[\d]+)\.html$#u [host] => [route] => series/serie [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a57167ab4] => sid [a140ab620] => page ) [_template:yii\web\UrlRule:private] => /series/seriepage.html/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [sid] => #^[\d]+$#u [page] => #^[\d]+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [33] => yii\web\UrlRule Object ( [name] => download/. [pattern] => #^download/(?P\d+)\.(?P[\wd.-]+)$#u [host] => [route] => books/download [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a16a2b381] => book_id [a05223f47] => file_type ) [_template:yii\web\UrlRule:private] => /download/./ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [book_id] => #^\d+$#u [file_type] => #^[\wd.-]+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [34] => yii\web\UrlRule Object ( [name] => author/read/page//book.html [pattern] => #^author(?P\d+)/read/page/(?P\d+)/book(?P\d+)\.html$#u [host] => [route] => books/read [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [af675f31b] => author_id [a140ab620] => page [a16a2b381] => book_id ) [_template:yii\web\UrlRule:private] => /author/read/page//book.html/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [author_id] => #^\d+$#u [page] => #^\d+$#u [book_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [35] => yii\web\UrlRule Object ( [name] => avtory/page.html [pattern] => #^avtory/page(?P\d+)\.html$#u [host] => [route] => authors/index [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a140ab620] => page ) [_template:yii\web\UrlRule:private] => /avtory/page.html/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [page] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [36] => yii\web\UrlRule Object ( [name] => genre [pattern] => #^genre(?P\d+)$#u [host] => [route] => genres/index [defaults] => Array ( ) [suffix] => / [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a6c09ff9d] => r ) [_template:yii\web\UrlRule:private] => /genre/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [r] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [37] => yii\web\UrlRule Object ( [name] => avtory//serie [pattern] => #^avtory/(?P[\wd-]+)/serie(?P\d+)$#u [host] => [route] => authors/item [defaults] => Array ( ) [suffix] => / [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [af7e44b59] => author_alias [a5278319c] => series_id ) [_template:yii\web\UrlRule:private] => /avtory//serie/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [author_alias] => #^[\wd-]+$#u [series_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [38] => yii\web\UrlRule Object ( [name] => avtory//comments [pattern] => #^avtory/(?P[\wd-]+)/comments$#u [host] => [route] => authors/comments [defaults] => Array ( ) [suffix] => / [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [af7e44b59] => author_alias ) [_template:yii\web\UrlRule:private] => /avtory//comments/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [author_alias] => #^[\wd-]+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [39] => yii\web\UrlRule Object ( [name] => genre/author/serie [pattern] => #^genre(?P\d+)/author(?P\d+)/serie(?P\d+)$#u [host] => [route] => authors/item [defaults] => Array ( ) [suffix] => / [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a4296d31f] => genre_id [af675f31b] => author_id [a5278319c] => series_id ) [_template:yii\web\UrlRule:private] => /genre/author/serie/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [genre_id] => #^\d+$#u [author_id] => #^\d+$#u [series_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [40] => yii\web\UrlRule Object ( [name] => avtory/ [pattern] => #^avtory/(?P[\wd-]+)$#u [host] => [route] => authors/item [defaults] => Array ( ) [suffix] => / [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [af7e44b59] => author_alias ) [_template:yii\web\UrlRule:private] => /avtory// [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [author_alias] => #^[\wd-]+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [41] => yii\web\UrlRule Object ( [name] => genre [pattern] => #^genre(?P\d+)$#u [host] => [route] => genres/index [defaults] => Array ( ) [suffix] => / [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a4296d31f] => genre_id ) [_template:yii\web\UrlRule:private] => /genre/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [genre_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [42] => yii\web\UrlRule Object ( [name] => avtory [pattern] => #^avtory$#u [host] => [route] => authors/index [defaults] => Array ( ) [suffix] => / [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( ) [_template:yii\web\UrlRule:private] => /avtory/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [43] => yii\web\UrlRule Object ( [name] => forum [pattern] => #^forum$#u [host] => [route] => forum/index [defaults] => Array ( ) [suffix] => / [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( ) [_template:yii\web\UrlRule:private] => /forum/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [44] => yii\web\UrlRule Object ( [name] => forum/ [pattern] => #^forum/(?P\d+)$#u [host] => [route] => forum/threads [defaults] => Array ( ) [suffix] => / [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a29ccbad0] => forum_id ) [_template:yii\web\UrlRule:private] => /forum// [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [forum_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [45] => yii\web\UrlRule Object ( [name] => forum/ [pattern] => #^forum/(?P[a])$#u [host] => [route] => forum/reviews-authors [defaults] => Array ( ) [suffix] => / [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a8cde5729] => type ) [_template:yii\web\UrlRule:private] => /forum// [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [type] => #^[a]$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [46] => yii\web\UrlRule Object ( [name] => forum/ [pattern] => #^forum/(?P[b])$#u [host] => [route] => forum/reviews-books [defaults] => Array ( ) [suffix] => / [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a8cde5729] => type ) [_template:yii\web\UrlRule:private] => /forum// [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [type] => #^[b]$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [47] => yii\web\UrlRule Object ( [name] => forum//page.html [pattern] => #^forum/(?P[a])/page(?P\d+)\.html$#u [host] => [route] => forum/reviews-authors [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a8cde5729] => type [a140ab620] => page ) [_template:yii\web\UrlRule:private] => /forum//page.html/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [type] => #^[a]$#u [page] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [48] => yii\web\UrlRule Object ( [name] => forum//page.html [pattern] => #^forum/(?P[b])/page(?P\d+)\.html$#u [host] => [route] => forum/reviews-books [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a8cde5729] => type [a140ab620] => page ) [_template:yii\web\UrlRule:private] => /forum//page.html/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [type] => #^[b]$#u [page] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [49] => yii\web\UrlRule Object ( [name] => forum//topic??.html [pattern] => #^forum/(?P\d+)/topic(?P\d+)(?P[-])?(?P\d+)?\.html$#u [host] => [route] => forum/topic [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a29ccbad0] => forum_id [a1f55203d] => topic_id [af500ae27] => q [a140ab620] => page ) [_template:yii\web\UrlRule:private] => /forum//topic??.html/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [forum_id] => #^\d+$#u [topic_id] => #^\d+$#u [q] => #^[-]$#u [page] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [50] => yii\web\UrlRule Object ( [name] => forum//topic/edit.html [pattern] => #^forum/(?P\d+)/topic(?P\d+)/edit\.html$#u [host] => [route] => forum/topic-edit [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a29ccbad0] => forum_id [a1f55203d] => topic_id ) [_template:yii\web\UrlRule:private] => /forum//topic/edit.html/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [forum_id] => #^\d+$#u [topic_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [51] => yii\web\UrlRule Object ( [name] => logout [pattern] => #^logout$#u [host] => [route] => auth/logout [defaults] => Array ( ) [suffix] => / [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( ) [_template:yii\web\UrlRule:private] => /logout/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [52] => yii\web\UrlRule Object ( [name] => captcha [pattern] => #^captcha$#u [host] => [route] => captcha/index [defaults] => Array ( ) [suffix] => / [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( ) [_template:yii\web\UrlRule:private] => /captcha/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [53] => yii\web\UrlRule Object ( [name] => sonnik [pattern] => #^sonnik$#u [host] => [route] => sonnik/index [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( ) [_template:yii\web\UrlRule:private] => /sonnik/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [54] => yii\web\UrlRule Object ( [name] => sonnik/ [pattern] => #^sonnik/(?P[\wd-]+)$#u [host] => [route] => sonnik/index [defaults] => Array ( ) [suffix] => / [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a8e02ee0a] => letter ) [_template:yii\web\UrlRule:private] => /sonnik// [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [letter] => #^[\wd-]+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [55] => yii\web\UrlRule Object ( [name] => sonnik// [pattern] => #^sonnik/(?P[\wd-]+)/(?P\d+)$#u [host] => [route] => sonnik/item [defaults] => Array ( ) [suffix] => / [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a8e02ee0a] => letter [ae357438d] => word_id ) [_template:yii\web\UrlRule:private] => /sonnik/// [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [letter] => #^[\wd-]+$#u [word_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [56] => yii\web\UrlRule Object ( [name] => confirm// [pattern] => #^confirm/(?P\d+)/(?P[\wd-]+)$#u [host] => [route] => auth/confirm [defaults] => Array ( ) [suffix] => / [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [aa76ed395] => user_id [aeb49070c] => confirm_code ) [_template:yii\web\UrlRule:private] => /confirm/// [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [user_id] => #^\d+$#u [confirm_code] => #^[\wd-]+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [57] => yii\web\UrlRule Object ( [name] => /author [pattern] => #^(?P[\wd-]+)/author(?P\d+)$#u [host] => [route] => redirect/author [defaults] => Array ( ) [suffix] => / [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a835033f8] => genre [af675f31b] => author_id ) [_template:yii\web\UrlRule:private] => //author/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [genre] => #^[\wd-]+$#u [author_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [58] => yii\web\UrlRule Object ( [name] => /author/book.html [pattern] => #^(?P[\wd-]+)/author(?P\d+)/book(?P\d+)\.html$#u [host] => [route] => redirect/book [defaults] => Array ( ) [suffix] => [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( [a835033f8] => genre [af675f31b] => author_id [a16a2b381] => book_id ) [_template:yii\web\UrlRule:private] => //author/book.html/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( [genre] => #^[\wd-]+$#u [author_id] => #^\d+$#u [book_id] => #^\d+$#u ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) [59] => yii\web\UrlRule Object ( [name] => all [pattern] => #^all$#u [host] => [route] => redirect/authors [defaults] => Array ( ) [suffix] => / [verb] => [mode] => [encodeParams] => 1 [normalizer] => [createStatus:protected] => [placeholders:protected] => Array ( ) [_template:yii\web\UrlRule:private] => /all/ [_routeRule:yii\web\UrlRule:private] => [_paramRules:yii\web\UrlRule:private] => Array ( ) [_routeParams:yii\web\UrlRule:private] => Array ( ) ) ) [suffix] => [showScriptName] => [routeParam] => r [cache] => yii\caching\FileCache Object ( [keyPrefix] => [cachePath] => /mnt/data/litportal.ru/trunk/runtime/cache [cacheFileSuffix] => .bin [directoryLevel] => 1 [gcProbability] => 10 [fileMode] => [dirMode] => 509 [serializer] => [defaultDuration] => 0 [_igbinaryAvailable:yii\caching\Cache:private] => [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => ) [ruleConfig] => Array ( [class] => yii\web\UrlRule ) [normalizer] => [cacheKey:protected] => yii\web\UrlManager [_baseUrl:yii\web\UrlManager:private] => [_scriptUrl:yii\web\UrlManager:private] => [_hostInfo:yii\web\UrlManager:private] => [_ruleCache:yii\web\UrlManager:private] => [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => ) [session] => yii\web\Session Object ( [flashParam] => __flash [handler] => [_cookieParams:yii\web\Session:private] => Array ( [httponly] => 1 ) [frozenSessionData:yii\web\Session:private] => [_hasSessionId:yii\web\Session:private] => [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => ) [db] => yii\db\Connection Object ( [dsn] => mysql:host=localhost;dbname=litportal_new [username] => libportal [password] => FodqBRa6T [attributes] => [pdo] => PDO Object ( ) [enableSchemaCache] => 1 [schemaCacheDuration] => 86400 [schemaCacheExclude] => Array ( ) [schemaCache] => cache [enableQueryCache] => 1 [queryCacheDuration] => 3600 [queryCache] => cache [charset] => utf8 [emulatePrepare] => [tablePrefix] => NEW_ [schemaMap] => Array ( [pgsql] => yii\db\pgsql\Schema [mysqli] => yii\db\mysql\Schema [mysql] => yii\db\mysql\Schema [sqlite] => yii\db\sqlite\Schema [sqlite2] => yii\db\sqlite\Schema [sqlsrv] => yii\db\mssql\Schema [oci] => yii\db\oci\Schema [mssql] => yii\db\mssql\Schema [dblib] => yii\db\mssql\Schema [cubrid] => yii\db\cubrid\Schema ) [pdoClass] => [commandClass] => yii\db\Command [commandMap] => Array ( [pgsql] => yii\db\Command [mysqli] => yii\db\Command [mysql] => yii\db\Command [sqlite] => yii\db\sqlite\Command [sqlite2] => yii\db\sqlite\Command [sqlsrv] => yii\db\Command [oci] => yii\db\Command [mssql] => yii\db\Command [dblib] => yii\db\Command [cubrid] => yii\db\Command ) [enableSavepoint] => 1 [serverStatusCache] => cache [serverRetryInterval] => 600 [enableSlaves] => 1 [slaves] => Array ( ) [slaveConfig] => Array ( ) [masters] => Array ( ) [masterConfig] => Array ( ) [shuffleMasters] => 1 [enableLogging] => 1 [enableProfiling] => 1 [_transaction:yii\db\Connection:private] => [_schema:yii\db\Connection:private] => yii\db\mysql\Schema Object ( [columnSchemaClass] => yii\db\mysql\ColumnSchema [_oldMysql:yii\db\mysql\Schema:private] => [typeMap] => Array ( [tinyint] => tinyint [bit] => integer [smallint] => smallint [mediumint] => integer [int] => integer [integer] => integer [bigint] => bigint [float] => float [double] => double [real] => float [decimal] => decimal [numeric] => decimal [tinytext] => text [mediumtext] => text [longtext] => text [longblob] => binary [blob] => binary [text] => text [varchar] => string [string] => string [char] => char [datetime] => datetime [year] => date [date] => date [time] => time [timestamp] => timestamp [enum] => string [varbinary] => binary [json] => json ) [tableQuoteCharacter:protected] => ` [columnQuoteCharacter:protected] => ` [db] => yii\db\Connection Object *RECURSION* [defaultSchema] => [exceptionMap] => Array ( [SQLSTATE[23] => yii\db\IntegrityException ) [_schemaNames:yii\db\Schema:private] => [_tableNames:yii\db\Schema:private] => Array ( ) [_tableMetadata:yii\db\Schema:private] => Array ( [NEW_books] => Array ( [schema] => yii\db\TableSchema Object ( [schemaName] => [name] => NEW_books [fullName] => NEW_books [primaryKey] => Array ( [0] => id ) [sequenceName] => [foreignKeys] => Array ( ) [columns] => Array ( [id] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => id [allowNull] => [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => 1 [autoIncrement] => 1 [unsigned] => [comment] => ) [external_uid] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => external_uid [allowNull] => 1 [type] => string [phpType] => string [dbType] => varchar(50) [defaultValue] => [enumValues] => [size] => 50 [precision] => 50 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [external_id] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => external_id [allowNull] => 1 [type] => string [phpType] => string [dbType] => varchar(30) [defaultValue] => [enumValues] => [size] => 30 [precision] => 30 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [external_id_type] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => external_id_type [allowNull] => 1 [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [is_deleted] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => is_deleted [allowNull] => [type] => smallint [phpType] => integer [dbType] => smallint(6) [defaultValue] => [enumValues] => [size] => 6 [precision] => 6 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [is_active] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => is_active [allowNull] => [type] => smallint [phpType] => integer [dbType] => smallint(6) [defaultValue] => [enumValues] => [size] => 6 [precision] => 6 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [author_id] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => author_id [allowNull] => [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [genre_id] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => genre_id [allowNull] => [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [user_id] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => user_id [allowNull] => 1 [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [title_ru] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => title_ru [allowNull] => [type] => string [phpType] => string [dbType] => varchar(200) [defaultValue] => [enumValues] => [size] => 200 [precision] => 200 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [alias] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => alias [allowNull] => [type] => string [phpType] => string [dbType] => varchar(100) [defaultValue] => [enumValues] => [size] => 100 [precision] => 100 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [description] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => description [allowNull] => 1 [type] => text [phpType] => string [dbType] => text [defaultValue] => [enumValues] => [size] => [precision] => [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [lang] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => lang [allowNull] => 1 [type] => string [phpType] => string [dbType] => varchar(10) [defaultValue] => [enumValues] => [size] => 10 [precision] => 10 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [year] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => year [allowNull] => 1 [type] => smallint [phpType] => integer [dbType] => smallint(6) [defaultValue] => [enumValues] => [size] => 6 [precision] => 6 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [views_cnt] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => views_cnt [allowNull] => 1 [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => 0 [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [has_trial] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => has_trial [allowNull] => 1 [type] => smallint [phpType] => integer [dbType] => smallint(6) [defaultValue] => 0 [enumValues] => [size] => 6 [precision] => 6 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [avatar] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => avatar [allowNull] => 1 [type] => string [phpType] => string [dbType] => varchar(255) [defaultValue] => [enumValues] => [size] => 255 [precision] => 255 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [created_at] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => created_at [allowNull] => [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [updated_at] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => updated_at [allowNull] => [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [rating] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => rating [allowNull] => 1 [type] => smallint [phpType] => integer [dbType] => smallint(6) [defaultValue] => 0 [enumValues] => [size] => 6 [precision] => 6 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [type] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => type [allowNull] => [type] => char [phpType] => string [dbType] => char(10) [defaultValue] => [enumValues] => [size] => 10 [precision] => 10 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [hot] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => hot [allowNull] => [type] => smallint [phpType] => integer [dbType] => smallint(6) [defaultValue] => 0 [enumValues] => [size] => 6 [precision] => 6 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [views_last_day] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => views_last_day [allowNull] => 1 [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => 0 [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [new_book_id] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => new_book_id [allowNull] => 1 [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => 0 [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [comments_cnt] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => comments_cnt [allowNull] => 1 [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => 0 [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [pub_date] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => pub_date [allowNull] => 1 [type] => date [phpType] => string [dbType] => date [defaultValue] => [enumValues] => [size] => [precision] => [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [write_date] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => write_date [allowNull] => 1 [type] => date [phpType] => string [dbType] => date [defaultValue] => [enumValues] => [size] => [precision] => [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) ) ) ) [NEW_books_authors] => Array ( [schema] => yii\db\TableSchema Object ( [schemaName] => [name] => NEW_books_authors [fullName] => NEW_books_authors [primaryKey] => Array ( [0] => id ) [sequenceName] => [foreignKeys] => Array ( ) [columns] => Array ( [id] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => id [allowNull] => [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => 1 [autoIncrement] => 1 [unsigned] => [comment] => ) [first_name] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => first_name [allowNull] => [type] => string [phpType] => string [dbType] => varchar(30) [defaultValue] => [enumValues] => [size] => 30 [precision] => 30 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [last_name] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => last_name [allowNull] => [type] => string [phpType] => string [dbType] => varchar(30) [defaultValue] => [enumValues] => [size] => 30 [precision] => 30 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [patronymic_name] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => patronymic_name [allowNull] => 1 [type] => string [phpType] => string [dbType] => varchar(30) [defaultValue] => [enumValues] => [size] => 30 [precision] => 30 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [alias] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => alias [allowNull] => [type] => string [phpType] => string [dbType] => varchar(100) [defaultValue] => [enumValues] => [size] => 100 [precision] => 100 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [litres_unique_id] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => litres_unique_id [allowNull] => 1 [type] => string [phpType] => string [dbType] => varchar(50) [defaultValue] => [enumValues] => [size] => 50 [precision] => 50 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [views_cnt] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => views_cnt [allowNull] => 1 [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => 0 [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [status] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => status [allowNull] => [type] => smallint [phpType] => integer [dbType] => smallint(6) [defaultValue] => [enumValues] => [size] => 6 [precision] => 6 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [created_at] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => created_at [allowNull] => [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [books_updated_at] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => books_updated_at [allowNull] => 1 [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => 0 [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [books_cnt] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => books_cnt [allowNull] => 1 [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => 0 [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [external_id] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => external_id [allowNull] => 1 [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => 0 [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [photo] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => photo [allowNull] => 1 [type] => string [phpType] => string [dbType] => varchar(200) [defaultValue] => 0 [enumValues] => [size] => 200 [precision] => 200 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [external_alias] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => external_alias [allowNull] => 1 [type] => string [phpType] => string [dbType] => varchar(255) [defaultValue] => 0 [enumValues] => [size] => 255 [precision] => 255 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [comments_cnt] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => comments_cnt [allowNull] => 1 [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => 0 [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) ) ) ) [NEW_books_files] => Array ( [schema] => yii\db\TableSchema Object ( [schemaName] => [name] => NEW_books_files [fullName] => NEW_books_files [primaryKey] => Array ( [0] => id ) [sequenceName] => [foreignKeys] => Array ( ) [columns] => Array ( [id] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => id [allowNull] => [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => 1 [autoIncrement] => 1 [unsigned] => [comment] => ) [book_id] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => book_id [allowNull] => [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [type] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => type [allowNull] => [type] => string [phpType] => string [dbType] => varchar(30) [defaultValue] => [enumValues] => [size] => 30 [precision] => 30 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [size] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => size [allowNull] => 1 [type] => integer [phpType] => integer [dbType] => int(30) [defaultValue] => [enumValues] => [size] => 30 [precision] => 30 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [local_path] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => local_path [allowNull] => [type] => string [phpType] => string [dbType] => varchar(100) [defaultValue] => 0 [enumValues] => [size] => 100 [precision] => 100 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [external_file_id] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => external_file_id [allowNull] => 1 [type] => integer [phpType] => integer [dbType] => int(11) [defaultValue] => 0 [enumValues] => [size] => 11 [precision] => 11 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) [status] => yii\db\mysql\ColumnSchema Object ( [disableJsonSupport] => [name] => status [allowNull] => [type] => smallint [phpType] => integer [dbType] => smallint(6) [defaultValue] => [enumValues] => [size] => 6 [precision] => 6 [scale] => [isPrimaryKey] => [autoIncrement] => [unsigned] => [comment] => ) ) ) ) ) [_builder:yii\db\Schema:private] => yii\db\mysql\QueryBuilder Object ( [typeMap] => Array ( [pk] => int(11) NOT NULL AUTO_INCREMENT PRIMARY KEY [upk] => int(10) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY [bigpk] => bigint(20) NOT NULL AUTO_INCREMENT PRIMARY KEY [ubigpk] => bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY [char] => char(1) [string] => varchar(255) [text] => text [tinyint] => tinyint(3) [smallint] => smallint(6) [integer] => int(11) [bigint] => bigint(20) [float] => float [double] => double [decimal] => decimal(10,0) [date] => date [binary] => blob [boolean] => tinyint(1) [money] => decimal(19,4) [json] => json [datetime] => datetime [timestamp] => timestamp [time] => time ) [db] => yii\db\Connection Object *RECURSION* [separator] => [conditionBuilders:protected] => Array ( ) [conditionClasses:protected] => Array ( [NOT] => yii\db\conditions\NotCondition [AND] => yii\db\conditions\AndCondition [OR] => yii\db\conditions\OrCondition [BETWEEN] => yii\db\conditions\BetweenCondition [NOT BETWEEN] => yii\db\conditions\BetweenCondition [IN] => yii\db\conditions\InCondition [NOT IN] => yii\db\conditions\InCondition [LIKE] => yii\db\conditions\LikeCondition [NOT LIKE] => yii\db\conditions\LikeCondition [OR LIKE] => yii\db\conditions\LikeCondition [OR NOT LIKE] => yii\db\conditions\LikeCondition [EXISTS] => yii\db\conditions\ExistsCondition [NOT EXISTS] => yii\db\conditions\ExistsCondition ) [expressionBuilders:protected] => Array ( [yii\db\Query] => yii\db\QueryExpressionBuilder [yii\db\PdoValue] => yii\db\PdoValueBuilder [yii\db\Expression] => yii\db\ExpressionBuilder [yii\db\conditions\ConjunctionCondition] => yii\db\conditions\ConjunctionConditionBuilder [yii\db\conditions\NotCondition] => yii\db\conditions\NotConditionBuilder [yii\db\conditions\AndCondition] => yii\db\conditions\ConjunctionConditionBuilder [yii\db\conditions\OrCondition] => yii\db\conditions\ConjunctionConditionBuilder [yii\db\conditions\BetweenCondition] => yii\db\conditions\BetweenConditionBuilder [yii\db\conditions\InCondition] => yii\db\conditions\InConditionBuilder Object ( [queryBuilder:protected] => yii\db\mysql\QueryBuilder Object *RECURSION* ) [yii\db\conditions\LikeCondition] => yii\db\conditions\LikeConditionBuilder [yii\db\conditions\ExistsCondition] => yii\db\conditions\ExistsConditionBuilder [yii\db\conditions\SimpleCondition] => yii\db\conditions\SimpleConditionBuilder [yii\db\conditions\HashCondition] => yii\db\conditions\HashConditionBuilder Object ( [queryBuilder:protected] => yii\db\mysql\QueryBuilder Object *RECURSION* ) [yii\db\conditions\BetweenColumnsCondition] => yii\db\conditions\BetweenColumnsConditionBuilder [yii\db\JsonExpression] => yii\db\mysql\JsonExpressionBuilder ) ) [_serverVersion:yii\db\Schema:private] => ) [_driverName:yii\db\Connection:private] => mysql [_master:yii\db\Connection:private] => [_slave:yii\db\Connection:private] => [_queryCacheInfo:yii\db\Connection:private] => Array ( ) [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => Array ( ) ) ) [_definitions:yii\di\ServiceLocator:private] => Array ( [errorHandler] => Array ( [errorAction] => main/index [class] => yii\web\ErrorHandler ) [request] => Array ( [cookieValidationKey] => ertfgw4345tsdfgsdfg [class] => yii\web\Request ) [cache] => Array ( [class] => yii\caching\FileCache ) [user] => Array ( [identityClass] => app\models\User [enableAutoLogin] => 1 [class] => yii\web\User ) [mailer] => Array ( [class] => yii\swiftmailer\Mailer [transport] => Array ( [class] => Swift_SmtpTransport [host] => smtp.yandex.ru [username] => noreply@litportal.ru [password] => ryKu4EqAMi [port] => 25 [encryption] => tls ) ) [log] => Array ( [traceLevel] => 0 [targets] => Array ( [0] => Array ( [class] => yii\log\FileTarget [levels] => Array ( [0] => error [1] => warning ) ) ) [class] => yii\log\Dispatcher ) [db] => Array ( [class] => yii\db\Connection [dsn] => mysql:host=localhost;dbname=litportal_new [username] => libportal [password] => FodqBRa6T [charset] => utf8 [tablePrefix] => NEW_ [enableSchemaCache] => 1 [schemaCache] => cache [schemaCacheDuration] => 86400 ) [urlManager] => Array ( [enablePrettyUrl] => 1 [showScriptName] => [rules] => Array ( [admin] => admin/index [admin/hashtags] => admin/hash-tags [admin/moderators/add] => admin/moderators-add-edit [admin/moderators/edit/] => admin/moderators-add-edit [admin/users/] => admin/user [admin/genres/] => admin/books-genre [admin/hashtags/] => admin/hash-tag [admin/chat-ban/] => admin/chat-ban-item [admin/books-comments/] => admin/book-comment [admin/photos-comments/] => admin/photo-comment [admin/diaries-comments/] => admin/diary-comment [admin/photos/] => admin/photo [admin/diaries/] => admin/diary [admin/events/] => admin/events [admin/books-search-requests/] => admin/books-search-request [assets/show_.jpg] => banners/index [///] => // [/] => / [//] => / [index.html] => redirect/genre [index.php] => redirect/genre [genre] => redirect/genre [login.html] => auth/login [newuser.html] => auth/register [kontakt.html] => main/feedback [/] => main/index [avtory//kniga-?-.html] => books/item [avtory//read/page//kniga-?-.html] => books/read [/author/read/page//book.html] => redirect/read [forum//page.html] => forum/threads [series/page.html] => series/index [series/serie.html] => series/serie [series/seriepage.html] => series/serie [download/.] => books/download [author/read/page//book.html] => books/read [avtory/page.html] => authors/index [0] => Array ( [pattern] => genre [route] => genres/index [suffix] => / ) [1] => Array ( [pattern] => avtory//serie [route] => authors/item [suffix] => / ) [2] => Array ( [pattern] => avtory//comments [route] => authors/comments [suffix] => / ) [3] => Array ( [pattern] => genre/author/serie [route] => authors/item [suffix] => / ) [4] => Array ( [pattern] => avtory/ [route] => authors/item [suffix] => / ) [5] => Array ( [pattern] => genre [route] => genres/index [suffix] => / ) [6] => Array ( [pattern] => avtory [route] => authors/index [suffix] => / ) [7] => Array ( [pattern] => forum [route] => forum/index [suffix] => / ) [8] => Array ( [pattern] => forum/ [route] => forum/threads [suffix] => / ) [9] => Array ( [pattern] => forum/ [route] => forum/reviews-authors [suffix] => / ) [10] => Array ( [pattern] => forum/ [route] => forum/reviews-books [suffix] => / ) [11] => Array ( [pattern] => forum//page.html [route] => forum/reviews-authors [suffix] => ) [12] => Array ( [pattern] => forum//page.html [route] => forum/reviews-books [suffix] => ) [13] => Array ( [pattern] => forum//topic??.html [route] => forum/topic [suffix] => ) [14] => Array ( [pattern] => forum//topic/edit.html [route] => forum/topic-edit [suffix] => ) [15] => Array ( [pattern] => logout [route] => auth/logout [suffix] => / ) [16] => Array ( [pattern] => captcha [route] => captcha/index [suffix] => / ) [17] => Array ( [pattern] => sonnik [route] => sonnik/index [suffix] => ) [18] => Array ( [pattern] => sonnik/ [route] => sonnik/index [suffix] => / ) [19] => Array ( [pattern] => sonnik// [route] => sonnik/item [suffix] => / ) [20] => Array ( [pattern] => confirm// [route] => auth/confirm [suffix] => / ) [21] => Array ( [pattern] => /author [route] => redirect/author [suffix] => / ) [22] => Array ( [pattern] => /author/book.html [route] => redirect/book [suffix] => ) [23] => Array ( [pattern] => all [route] => redirect/authors [suffix] => / ) ) [class] => yii\web\UrlManager ) [assetManager] => Array ( [bundles] => Array ( [0] => app\assets\AppAsset ) [class] => yii\web\AssetManager ) [view] => Array ( [renderers] => Array ( [twig] => Array ( [class] => yii\twig\ViewRenderer [cachePath] => @runtime/Twig/cache [options] => Array ( [auto_reload] => 1 ) [globals] => Array ( [html] => \yii\helpers\Html ) [filters] => Array ( [author_full_name] => app\libs\helpers\RenderHelper::author_full_name [author_printed_by_last_name] => app\libs\helpers\RenderHelper::author_printed_by_last_name [author_avatar] => app\libs\helpers\RenderHelper::author_avatar [book_avatar] => app\libs\helpers\RenderHelper::book_avatar [book_cover] => app\libs\helpers\RenderHelper::book_cover [fileTypeHuman] => app\libs\helpers\RenderHelper::fileTypeHuman [litresLink] => app\libs\helpers\RenderHelper::litresLink [mybookLink] => app\libs\helpers\RenderHelper::mybookLink [user_nickname] => app\libs\helpers\RenderHelper::user_nickname [plural] => app\libs\helpers\RenderHelper::plural [rating] => app\libs\helpers\RenderHelper::rating [integer] => app\libs\helpers\RenderHelper::toInt [book_link] => app\libs\helpers\RenderHelper::book_link [author_link] => app\libs\helpers\RenderHelper::author_link ) [functions] => Array ( [floor] => floor [ceil] => ceil [date] => date [strtotime] => strtotime [time] => time [print_r] => print_r [replaceParam] => app\libs\helpers\RenderHelper::replaceParam [getAlphabet] => app\libs\helpers\RenderHelper::getAlphabet [bbcode] => app\libs\helpers\RenderHelper::bbcode [bbcode_clean] => app\libs\helpers\RenderHelper::bbcode_clean [board_message_to_html] => app\libs\helpers\RenderHelper::board_message_to_html [links_clean] => app\libs\helpers\RenderHelper::links_clean [read_book_text] => app\libs\helpers\RenderHelper::readBookText [genresArray] => app\libs\helpers\RenderHelper::genresArray ) ) ) [class] => yii\web\View ) [formatter] => Array ( [class] => yii\i18n\Formatter ) [i18n] => Array ( [class] => yii\i18n\I18N ) [security] => Array ( [class] => yii\base\Security ) [response] => Array ( [class] => yii\web\Response ) [session] => Array ( [class] => yii\web\Session ) ) [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => Array ( ) ) [defaultAction] => index [action] => yii\base\InlineAction Object ( [actionMethod] => actionRead [id] => read [controller] => app\controllers\BooksController Object *RECURSION* [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => ) [_view:yii\base\Controller:private] => [_viewPath:yii\base\Controller:private] => [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => Array ( ) ) [1] => actionRead ) [1] => Array ( ) ) ) [6] => Array ( [file] => /mnt/data/litportal.ru/trunk/vendor/yiisoft/yii2/base/Controller.php [line] => 157 [function] => runWithParams [class] => yii\base\InlineAction [type] => -> [args] => Array ( [0] => Array ( [author_alias] => thackeray-william-makepeace-10847451 [page] => 4 [book_alias] => a-history-of-pendennis-volume-1-his-fortunes-and-misfortunes-his-friends-and-his-greatest-enemy [book_id] => 653268 ) ) ) [7] => Array ( [file] => /mnt/data/litportal.ru/trunk/vendor/yiisoft/yii2/base/Module.php [line] => 528 [function] => runAction [class] => yii\base\Controller [type] => -> [args] => Array ( [0] => read [1] => Array ( [author_alias] => thackeray-william-makepeace-10847451 [page] => 4 [book_alias] => a-history-of-pendennis-volume-1-his-fortunes-and-misfortunes-his-friends-and-his-greatest-enemy [book_id] => 653268 ) ) ) [8] => Array ( [file] => /mnt/data/litportal.ru/trunk/vendor/yiisoft/yii2/web/Application.php [line] => 103 [function] => runAction [class] => yii\base\Module [type] => -> [args] => Array ( [0] => books/read [1] => Array ( [author_alias] => thackeray-william-makepeace-10847451 [page] => 4 [book_alias] => a-history-of-pendennis-volume-1-his-fortunes-and-misfortunes-his-friends-and-his-greatest-enemy [book_id] => 653268 ) ) ) [9] => Array ( [file] => /mnt/data/litportal.ru/trunk/vendor/yiisoft/yii2/base/Application.php [line] => 386 [function] => handleRequest [class] => yii\web\Application [type] => -> [args] => Array ( [0] => yii\web\Request Object ( [enableCsrfValidation] => 1 [csrfParam] => _csrf [csrfCookie] => Array ( [httpOnly] => 1 ) [enableCsrfCookie] => 1 [enableCookieValidation] => 1 [cookieValidationKey] => ertfgw4345tsdfgsdfg [methodParam] => _method [parsers] => Array ( ) [trustedHosts] => Array ( ) [secureHeaders] => Array ( [0] => X-Forwarded-For [1] => X-Forwarded-Host [2] => X-Forwarded-Proto [3] => Front-End-Https [4] => X-Rewrite-Url ) [ipHeaders] => Array ( [0] => X-Forwarded-For ) [secureProtocolHeaders] => Array ( [X-Forwarded-Proto] => Array ( [0] => https ) [Front-End-Https] => Array ( [0] => on ) ) [_cookies:yii\web\Request:private] => [_headers:yii\web\Request:private] => yii\web\HeaderCollection Object ( [_headers:yii\web\HeaderCollection:private] => Array ( [accept-encoding] => Array ( [0] => br,gzip ) [if-modified-since] => Array ( [0] => Thu, 17 Oct 2019 12:53:32 GMT ) [accept-language] => Array ( [0] => en-US,en;q=0.5 ) [accept] => Array ( [0] => text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 ) [user-agent] => Array ( [0] => CCBot/2.0 (https://commoncrawl.org/faq/) ) [x-real-ip] => Array ( [0] => 34.239.172.52 ) [connection] => Array ( [0] => upgrade ) [host] => Array ( [0] => litportal.ru ) ) ) [_rawBody:yii\web\Request:private] => [_bodyParams:yii\web\Request:private] => [_queryParams:yii\web\Request:private] => [_hostInfo:yii\web\Request:private] => [_hostName:yii\web\Request:private] => [_baseUrl:yii\web\Request:private] => [_scriptUrl:yii\web\Request:private] => /index.php [_scriptFile:yii\web\Request:private] => [_pathInfo:yii\web\Request:private] => avtory/thackeray-william-makepeace-10847451/read/page/4/kniga-a-history-of-pendennis-volume-1-his-fortunes-and-misfortunes-his-friends-and-his-greatest-enemy-653268.html [_url:yii\web\Request:private] => /avtory/thackeray-william-makepeace-10847451/read/page/4/kniga-a-history-of-pendennis-volume-1-his-fortunes-and-misfortunes-his-friends-and-his-greatest-enemy-653268.html [_port:yii\web\Request:private] => [_securePort:yii\web\Request:private] => [_contentTypes:yii\web\Request:private] => [_languages:yii\web\Request:private] => [_csrfToken:yii\web\Request:private] => [_isConsoleRequest:yii\base\Request:private] => [_events:yii\base\Component:private] => Array ( ) [_eventWildcards:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => [_scriptFile:yii\base\Request:private] => ) ) ) [10] => Array ( [file] => /mnt/data/litportal.ru/trunk/web/index.php [line] => 18 [function] => run [class] => yii\base\Application [type] => -> [args] => Array ( ) ) ) [previous:Exception:private] => [severity:protected] => 2 )