@refineui/react-native-icons 0.3.29 → 0.3.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"index.umd.js","sources":["../src/IconUtils.ts","../src/utils.ts","../src/regular-icons.ts","../src/filled-icons.ts"],"sourcesContent":["import React from 'react';\nimport metadata from './metadata.json';\n\nfunction nameToSlug(name: string): string {\n return String(name).toLowerCase().trim().replace(/\\s+/g, '-');\n}\nfunction pascalToSlug(name: string): string {\n return String(name).replace(/([A-Z])/g, '-$1').toLowerCase().replace(/^-/, '');\n}\nfunction normalizeIconName(name: string): string {\n return String(name).trim().replace(/\\s+/g, ' ');\n}\n\nexport interface IconProps {\n style?: any;\n className?: string;\n onPress?: () => void;\n [key: string]: any;\n}\n\nexport interface IconData {\n name: string;\n slug: string;\n size: number[];\n style: string[];\n keyword: string;\n description: string;\n files: any[];\n unicodeMapping: any;\n}\n\nexport interface Metadata {\n totalIcons: number;\n supportedSizes: number[];\n supportedStyles: string[];\n fontFamilies: any;\n icons: { [key: string]: IconData };\n}\n\nclass ReactNativeIconUtils {\n private metadata: Metadata;\n private fontFamilies: any;\n\n constructor() {\n this.metadata = metadata;\n this.fontFamilies = metadata.fontFamilies;\n }\n\n private getIconData(iconName: string): IconData | null {\n if (!iconName || typeof iconName !== 'string') return null;\n const direct = this.metadata.icons[iconName];\n if (direct) return direct;\n const normalized = normalizeIconName(iconName);\n if (normalized && this.metadata.icons[normalized]) return this.metadata.icons[normalized];\n const slug = nameToSlug(iconName);\n const bySlug = Object.values(this.metadata.icons).find((icon) => icon.slug === slug);\n if (bySlug) return bySlug;\n const slugPascal = pascalToSlug(iconName);\n return Object.values(this.metadata.icons).find((icon) => icon.slug === slugPascal) || null;\n }\n\n // === Icon Style Method ===\n // Dynamic icon creation method\n createIconMethod(iconName: string, props: IconProps = {}): React.ReactElement | null {\n // Unsized method: AccessibilityRegular, AccessibilityFilled\n const unsizedMatch = iconName.match(/^([A-Za-z]+)(Regular|Filled)$/);\n if (unsizedMatch) {\n const [, iconNamePart, iconStyle] = unsizedMatch;\n return this.createUnsizedIcon(iconNamePart, iconStyle.toLowerCase() as 'regular' | 'filled', props);\n }\n\n // Sized method: Accessibility16Regular, Accessibility24Filled\n const sizedMatch = iconName.match(/^([A-Za-z]+)(\\d+)(Regular|Filled)$/);\n if (sizedMatch) {\n const [, iconNamePart, sizeStr, iconStyle] = sizedMatch;\n const size = parseInt(sizeStr, 10);\n return this.createSizedIcon(iconNamePart, size, iconStyle.toLowerCase() as 'regular' | 'filled', props);\n }\n\n return null;\n }\n\n // Create unsized icon (default 24px)\n private createUnsizedIcon(iconName: string, style: 'regular' | 'filled', props: IconProps = {}): React.ReactElement | null {\n const iconData = this.getIconData(iconName);\n if (!iconData?.unicodeMapping) return null;\n\n const defaultSize = 24;\n const unicodeInfo = iconData.unicodeMapping[String(defaultSize)]?.[style];\n if (!unicodeInfo || unicodeInfo.unicode == null) return null;\n\n const fontFamily = this.fontFamilies[style].font_family;\n \n return React.createElement('Text', {\n ...props,\n style: {\n fontFamily,\n fontSize: defaultSize,\n lineHeight: defaultSize,\n ...props.style\n },\n children: String.fromCodePoint(unicodeInfo.unicode)\n });\n }\n\n // Create sized icon\n private createSizedIcon(iconName: string, size: number, style: 'regular' | 'filled', props: IconProps = {}): React.ReactElement | null {\n const iconData = this.getIconData(iconName);\n if (!iconData?.unicodeMapping) return null;\n\n const unicodeInfo = iconData.unicodeMapping[String(size)]?.[style];\n if (!unicodeInfo || unicodeInfo.unicode == null) return null;\n\n const fontFamily = this.fontFamilies[style].font_family;\n \n return React.createElement('Text', {\n ...props,\n style: {\n fontFamily,\n fontSize: size,\n lineHeight: size,\n ...props.style\n },\n children: String.fromCodePoint(unicodeInfo.unicode)\n });\n }\n\n // Utility methods\n getIconChar(iconName: string, style: 'regular' | 'filled' = 'regular', size: number = 24): string | null {\n const iconData = this.getIconData(iconName);\n if (!iconData?.unicodeMapping) return null;\n\n const unicodeInfo = iconData.unicodeMapping[String(size)]?.[style];\n if (!unicodeInfo || unicodeInfo.unicode == null) return null;\n\n return String.fromCodePoint(unicodeInfo.unicode);\n }\n\n getIconClass(iconName: string, style: 'regular' | 'filled' = 'regular', size: number = 24): string | null {\n const iconData = this.getIconData(iconName);\n if (!iconData?.unicodeMapping) return null;\n\n const unicodeInfo = iconData.unicodeMapping[String(size)]?.[style];\n if (!unicodeInfo) return null;\n\n return unicodeInfo.cssClass;\n }\n\n getFontFamily(style: 'regular' | 'filled' = 'regular'): string {\n return this.fontFamilies[style].font_family;\n }\n\n getAvailableIcons(): string[] {\n return Object.keys(this.metadata.icons);\n }\n\n getFontFamilies(): any {\n return this.fontFamilies;\n }\n\n getAvailableSizes(): number[] {\n return this.metadata.supportedSizes;\n }\n\n getIconInfo(iconName: string): IconData | null {\n return this.getIconData(iconName);\n }\n\n searchIcons(query: string): string[] {\n const searchTerm = query.toLowerCase();\n return Object.keys(this.metadata.icons).filter(iconName => \n iconName.toLowerCase().includes(searchTerm) ||\n this.metadata.icons[iconName].description.toLowerCase().includes(searchTerm)\n );\n }\n}\n\n// Create singleton instance\nconst reactNativeIconUtils = new ReactNativeIconUtils();\n\nexport default reactNativeIconUtils;\nexport { ReactNativeIconUtils };\n","import React from 'react';\nimport { Text, TextProps } from 'react-native';\nimport IconUtils from './IconUtils';\n\nexport interface IconProps extends TextProps {\n size?: number;\n color?: string;\n iconStyle?: 'regular' | 'filled';\n [key: string]: any;\n}\n\n// === Icon component creation method ===\nexport const createIconComponent = (iconName: string, style: 'regular' | 'filled') => {\n return (props: IconProps) => {\n const iconChar = IconUtils.getIconChar(iconName, style, props.size || 24);\n const fontFamily = IconUtils.getFontFamily(style);\n\n if (!iconChar) return null;\n\n const styleObj = {\n fontFamily,\n fontSize: props.size || 24,\n color: props.color || 'currentColor',\n lineHeight: 1,\n };\n\n return React.createElement(Text as any, {\n style: [styleObj, props.style],\n ...props,\n }, iconChar);\n };\n};\n\n// === Utility functions ===\nexport { default as IconUtils } from './IconUtils';\n\nexport const getIconChar = (iconName: string, style: 'regular' | 'filled' = 'regular', size: number = 24) => {\n return IconUtils.getIconChar(iconName, style, size);\n};\n\nexport const getIconClass = (iconName: string, style: 'regular' | 'filled' = 'regular', size: number = 24) => {\n return IconUtils.getIconClass(iconName, style, size);\n};\n\nexport const getFontFamily = (style: 'regular' | 'filled' = 'regular') => {\n return IconUtils.getFontFamily(style);\n};","// === Regular style icons ===\n// This file is auto-generated. Do not modify.\n\nimport { createIconComponent } from './utils';\n\nexport const AccessTime = createIconComponent('access-time', 'regular');\nexport const Accessibility = createIconComponent('accessibility', 'regular');\nexport const Add = createIconComponent('add', 'regular');\nexport const AddCircle = createIconComponent('add-circle', 'regular');\nexport const AddSquare = createIconComponent('add-square', 'regular');\nexport const Airplane = createIconComponent('airplane', 'regular');\nexport const Album = createIconComponent('album', 'regular');\nexport const Alert = createIconComponent('alert', 'regular');\nexport const AlertBadge = createIconComponent('alert-badge', 'regular');\nexport const AlertOff = createIconComponent('alert-off', 'regular');\nexport const AlignBottom = createIconComponent('align-bottom', 'regular');\nexport const AlignCenterHorizontal = createIconComponent('align-center-horizontal', 'regular');\nexport const AlignCenterVertical = createIconComponent('align-center-vertical', 'regular');\nexport const AlignLeft = createIconComponent('align-left', 'regular');\nexport const AlignRight = createIconComponent('align-right', 'regular');\nexport const AlignTop = createIconComponent('align-top', 'regular');\nexport const Android = createIconComponent('android', 'regular');\nexport const AppFolder = createIconComponent('app-folder', 'regular');\nexport const AppRecent = createIconComponent('app-recent', 'regular');\nexport const AppTitle = createIconComponent('app-title', 'regular');\nexport const Appstore = createIconComponent('appstore', 'regular');\nexport const Autosum = createIconComponent('autosum', 'regular');\nexport const Backpack = createIconComponent('backpack', 'regular');\nexport const Backspace = createIconComponent('backspace', 'regular');\nexport const Badge = createIconComponent('badge', 'regular');\nexport const Balloon = createIconComponent('balloon', 'regular');\nexport const BarChartHorizontal = createIconComponent('bar-chart-horizontal', 'regular');\nexport const BarChartHorizontalDescending = createIconComponent('bar-chart-horizontal-descending', 'regular');\nexport const BarChartVertical = createIconComponent('bar-chart-vertical', 'regular');\nexport const BarChartVerticalDescending = createIconComponent('bar-chart-vertical-descending', 'regular');\nexport const BarcodeScanner = createIconComponent('barcode-scanner', 'regular');\nexport const Battery0 = createIconComponent('battery-0', 'regular');\nexport const Battery10 = createIconComponent('battery-10', 'regular');\nexport const Battery100 = createIconComponent('battery-100', 'regular');\nexport const Battery20 = createIconComponent('battery-20', 'regular');\nexport const Battery30 = createIconComponent('battery-30', 'regular');\nexport const Battery40 = createIconComponent('battery-40', 'regular');\nexport const Battery50 = createIconComponent('battery-50', 'regular');\nexport const Battery60 = createIconComponent('battery-60', 'regular');\nexport const Battery70 = createIconComponent('battery-70', 'regular');\nexport const Battery80 = createIconComponent('battery-80', 'regular');\nexport const Battery90 = createIconComponent('battery-90', 'regular');\nexport const Block = createIconComponent('block', 'regular');\nexport const Bluetooth = createIconComponent('bluetooth', 'regular');\nexport const Blur = createIconComponent('blur', 'regular');\nexport const Board = createIconComponent('board', 'regular');\nexport const Book = createIconComponent('book', 'regular');\nexport const Bookmark = createIconComponent('bookmark', 'regular');\nexport const Bug = createIconComponent('bug', 'regular');\nexport const Calculator = createIconComponent('calculator', 'regular');\nexport const Calendar = createIconComponent('calendar', 'regular');\nexport const Camera = createIconComponent('camera', 'regular');\nexport const Cart = createIconComponent('cart', 'regular');\nexport const CartonBox = createIconComponent('carton-box', 'regular');\nexport const Chart = createIconComponent('chart', 'regular');\nexport const Chat = createIconComponent('chat', 'regular');\nexport const ChatAdd = createIconComponent('chat-add', 'regular');\nexport const ChatEmpty = createIconComponent('chat-empty', 'regular');\nexport const Checkmark = createIconComponent('checkmark', 'regular');\nexport const Chess = createIconComponent('chess', 'regular');\nexport const ChevronDown = createIconComponent('chevron-down', 'regular');\nexport const ChevronLeft = createIconComponent('chevron-left', 'regular');\nexport const ChevronRight = createIconComponent('chevron-right', 'regular');\nexport const ChevronUp = createIconComponent('chevron-up', 'regular');\nexport const Circle = createIconComponent('circle', 'regular');\nexport const Clipboard = createIconComponent('clipboard', 'regular');\nexport const Clock = createIconComponent('clock', 'regular');\nexport const ClockAlarm = createIconComponent('clock-alarm', 'regular');\nexport const Cloud = createIconComponent('cloud', 'regular');\nexport const Clover = createIconComponent('clover', 'regular');\nexport const Code = createIconComponent('code', 'regular');\nexport const CodeBlock = createIconComponent('code-block', 'regular');\nexport const Comma = createIconComponent('comma', 'regular');\nexport const Comment = createIconComponent('comment', 'regular');\nexport const Cone = createIconComponent('cone', 'regular');\nexport const Contrast = createIconComponent('contrast', 'regular');\nexport const ControlButton = createIconComponent('control-button', 'regular');\nexport const Cookie = createIconComponent('cookie', 'regular');\nexport const Copy = createIconComponent('copy', 'regular');\nexport const Couch = createIconComponent('couch', 'regular');\nexport const Cpu = createIconComponent('cpu', 'regular');\nexport const Crop = createIconComponent('crop', 'regular');\nexport const Crown = createIconComponent('crown', 'regular');\nexport const Css = createIconComponent('css', 'regular');\nexport const Cube = createIconComponent('cube', 'regular');\nexport const Cursor = createIconComponent('cursor', 'regular');\nexport const Cut = createIconComponent('cut', 'regular');\nexport const Dart = createIconComponent('dart', 'regular');\nexport const Database = createIconComponent('database', 'regular');\nexport const Delete = createIconComponent('delete', 'regular');\nexport const DeleteOff = createIconComponent('delete-off', 'regular');\nexport const Dentist = createIconComponent('dentist', 'regular');\nexport const Desk = createIconComponent('desk', 'regular');\nexport const Desktop = createIconComponent('desktop', 'regular');\nexport const DesktopMac = createIconComponent('desktop-mac', 'regular');\nexport const Dialpad = createIconComponent('dialpad', 'regular');\nexport const Diamond = createIconComponent('diamond', 'regular');\nexport const Dismiss = createIconComponent('dismiss', 'regular');\nexport const DismissCircle = createIconComponent('dismiss-circle', 'regular');\nexport const DismissSquare = createIconComponent('dismiss-square', 'regular');\nexport const Doctor = createIconComponent('doctor', 'regular');\nexport const Document = createIconComponent('document', 'regular');\nexport const DocumentBorder = createIconComponent('document-border', 'regular');\nexport const Door = createIconComponent('door', 'regular');\nexport const Drag = createIconComponent('drag', 'regular');\nexport const Drawer = createIconComponent('drawer', 'regular');\nexport const Drop = createIconComponent('drop', 'regular');\nexport const DualScreen = createIconComponent('dual-screen', 'regular');\nexport const Dumbbell = createIconComponent('dumbbell', 'regular');\nexport const Dust = createIconComponent('dust', 'regular');\nexport const Earth = createIconComponent('earth', 'regular');\nexport const Edit = createIconComponent('edit', 'regular');\nexport const EditOff = createIconComponent('edit-off', 'regular');\nexport const Elevator = createIconComponent('elevator', 'regular');\nexport const Emoji = createIconComponent('emoji', 'regular');\nexport const EmojiAngry = createIconComponent('emoji-angry', 'regular');\nexport const EmojiCool = createIconComponent('emoji-cool', 'regular');\nexport const EmojiGrimacing = createIconComponent('emoji-grimacing', 'regular');\nexport const EmojiLaugh = createIconComponent('emoji-laugh', 'regular');\nexport const EmojiMeh = createIconComponent('emoji-meh', 'regular');\nexport const EmojiSad = createIconComponent('emoji-sad', 'regular');\nexport const EmojiSurprise = createIconComponent('emoji-surprise', 'regular');\nexport const Engine = createIconComponent('engine', 'regular');\nexport const Equal = createIconComponent('equal', 'regular');\nexport const EqualCircle = createIconComponent('equal-circle', 'regular');\nexport const EqualOff = createIconComponent('equal-off', 'regular');\nexport const ErrorCircle = createIconComponent('error-circle', 'regular');\nexport const Eye = createIconComponent('eye', 'regular');\nexport const EyeOff = createIconComponent('eye-off', 'regular');\nexport const Eyedropper = createIconComponent('eyedropper', 'regular');\nexport const EyedropperOff = createIconComponent('eyedropper-off', 'regular');\nexport const FastForward = createIconComponent('fast-forward', 'regular');\nexport const Filmstrip = createIconComponent('filmstrip', 'regular');\nexport const FilmstripOff = createIconComponent('filmstrip-off', 'regular');\nexport const Filter = createIconComponent('filter', 'regular');\nexport const Fire = createIconComponent('fire', 'regular');\nexport const Flag = createIconComponent('flag', 'regular');\nexport const FlagOff = createIconComponent('flag-off', 'regular');\nexport const Flash = createIconComponent('flash', 'regular');\nexport const FlashOff = createIconComponent('flash-off', 'regular');\nexport const Flashlight = createIconComponent('flashlight', 'regular');\nexport const FlashlightOff = createIconComponent('flashlight-off', 'regular');\nexport const FlipHorizontal = createIconComponent('flip-horizontal', 'regular');\nexport const FlipVerticial = createIconComponent('flip-verticial', 'regular');\nexport const Folder = createIconComponent('folder', 'regular');\nexport const FolderOpen = createIconComponent('folder-open', 'regular');\nexport const Frame = createIconComponent('frame', 'regular');\nexport const FullScreenMaximize = createIconComponent('full-screen-maximize', 'regular');\nexport const FullScreenMinimize = createIconComponent('full-screen-minimize', 'regular');\nexport const Games = createIconComponent('games', 'regular');\nexport const GanttChart = createIconComponent('gantt-chart', 'regular');\nexport const Gas = createIconComponent('gas', 'regular');\nexport const GasStation = createIconComponent('gas-station', 'regular');\nexport const Gavel = createIconComponent('gavel', 'regular');\nexport const Gif = createIconComponent('gif', 'regular');\nexport const Gift = createIconComponent('gift', 'regular');\nexport const GiftCard = createIconComponent('gift-card', 'regular');\nexport const Git = createIconComponent('git', 'regular');\nexport const Glasses = createIconComponent('glasses', 'regular');\nexport const Global = createIconComponent('global', 'regular');\nexport const Grid = createIconComponent('grid', 'regular');\nexport const Guest = createIconComponent('guest', 'regular');\nexport const Guitar = createIconComponent('guitar', 'regular');\nexport const Hammer = createIconComponent('hammer', 'regular');\nexport const HardDrive = createIconComponent('hard-drive', 'regular');\nexport const HatGraduation = createIconComponent('hat-graduation', 'regular');\nexport const Hd = createIconComponent('hd', 'regular');\nexport const Hdr = createIconComponent('hdr', 'regular');\nexport const HdrOff = createIconComponent('hdr-off', 'regular');\nexport const Headphones = createIconComponent('headphones', 'regular');\nexport const HeadphonesMic = createIconComponent('headphones-mic', 'regular');\nexport const HeadsetVr = createIconComponent('headset-vr', 'regular');\nexport const Heart = createIconComponent('heart', 'regular');\nexport const HeartBroken = createIconComponent('heart-broken', 'regular');\nexport const Hexagon = createIconComponent('hexagon', 'regular');\nexport const Highlight = createIconComponent('highlight', 'regular');\nexport const Highway = createIconComponent('highway', 'regular');\nexport const Home = createIconComponent('home', 'regular');\nexport const HomeCheckmark = createIconComponent('home-checkmark', 'regular');\nexport const Hourglass = createIconComponent('hourglass', 'regular');\nexport const HourglassHalf = createIconComponent('hourglass-half', 'regular');\nexport const HourglassOneQuarter = createIconComponent('hourglass-one-quarter', 'regular');\nexport const HourglassThreeQuarter = createIconComponent('hourglass-three-quarter', 'regular');\nexport const Html = createIconComponent('html', 'regular');\nexport const Image = createIconComponent('image', 'regular');\nexport const ImageCircle = createIconComponent('image-circle', 'regular');\nexport const Important = createIconComponent('important', 'regular');\nexport const Incognito = createIconComponent('incognito', 'regular');\nexport const Info = createIconComponent('info', 'regular');\nexport const Ios = createIconComponent('ios', 'regular');\nexport const IosArrowLtr = createIconComponent('ios-arrow-ltr', 'regular');\nexport const IosArrowRtl = createIconComponent('ios-arrow-rtl', 'regular');\nexport const IosChevronLtr = createIconComponent('ios-chevron-ltr', 'regular');\nexport const IosChevronRtl = createIconComponent('ios-chevron-rtl', 'regular');\nexport const Iot = createIconComponent('iot', 'regular');\nexport const Javascript = createIconComponent('javascript', 'regular');\nexport const Joystick = createIconComponent('joystick', 'regular');\nexport const Json = createIconComponent('json', 'regular');\nexport const JsonFile = createIconComponent('json-file', 'regular');\nexport const Key = createIconComponent('key', 'regular');\nexport const KeyMultiple = createIconComponent('key-multiple', 'regular');\nexport const Keyboard = createIconComponent('keyboard', 'regular');\nexport const KeyboardBackspace = createIconComponent('keyboard-backspace', 'regular');\nexport const KeyboardCommand = createIconComponent('keyboard-command', 'regular');\nexport const KeyboardLock = createIconComponent('keyboard-lock', 'regular');\nexport const KeyboardOff = createIconComponent('keyboard-off', 'regular');\nexport const KeyboardOption = createIconComponent('keyboard-option', 'regular');\nexport const KeyboardReturn = createIconComponent('keyboard-return', 'regular');\nexport const KeyboardShift = createIconComponent('keyboard-shift', 'regular');\nexport const KeyboardShiftUppercase = createIconComponent('keyboard-shift-uppercase', 'regular');\nexport const KeyboardTab = createIconComponent('keyboard-tab', 'regular');\nexport const Kiosk = createIconComponent('kiosk', 'regular');\nexport const Kotlin = createIconComponent('kotlin', 'regular');\nexport const Laptop = createIconComponent('laptop', 'regular');\nexport const Layer = createIconComponent('layer', 'regular');\nexport const Lightbulb = createIconComponent('lightbulb', 'regular');\nexport const Line = createIconComponent('line', 'regular');\nexport const LineDashes = createIconComponent('line-dashes', 'regular');\nexport const LineHorizontal1 = createIconComponent('line-horizontal-1', 'regular');\nexport const LineHorizontal1Dashes = createIconComponent('line-horizontal-1-dashes', 'regular');\nexport const Link = createIconComponent('link', 'regular');\nexport const LocalLanguage = createIconComponent('local-language', 'regular');\nexport const Location = createIconComponent('location', 'regular');\nexport const LocationArrow = createIconComponent('location-arrow', 'regular');\nexport const LockClosed = createIconComponent('lock-closed', 'regular');\nexport const LockOpen = createIconComponent('lock-open', 'regular');\nexport const Luggage = createIconComponent('luggage', 'regular');\nexport const Macos = createIconComponent('macos', 'regular');\nexport const Mail = createIconComponent('mail', 'regular');\nexport const MailRead = createIconComponent('mail-read', 'regular');\nexport const Mailbox = createIconComponent('mailbox', 'regular');\nexport const Map = createIconComponent('map', 'regular');\nexport const Markdown = createIconComponent('markdown', 'regular');\nexport const MathSymbols = createIconComponent('math-symbols', 'regular');\nexport const Megaphone = createIconComponent('megaphone', 'regular');\nexport const Mic = createIconComponent('mic', 'regular');\nexport const Moon = createIconComponent('moon', 'regular');\nexport const MoreCircle = createIconComponent('more-circle', 'regular');\nexport const MoreHorizontal = createIconComponent('more-horizontal', 'regular');\nexport const MoreVerticial = createIconComponent('more-verticial', 'regular');\nexport const Mouse = createIconComponent('mouse', 'regular');\nexport const Movie = createIconComponent('movie', 'regular');\nexport const NetworkCheck = createIconComponent('network-check', 'regular');\nexport const News = createIconComponent('news', 'regular');\nexport const Next = createIconComponent('next', 'regular');\nexport const Note = createIconComponent('note', 'regular');\nexport const Notebook = createIconComponent('notebook', 'regular');\nexport const Notepad = createIconComponent('notepad', 'regular');\nexport const NumberCircle0 = createIconComponent('number-circle-0', 'regular');\nexport const NumberCircle1 = createIconComponent('number-circle-1', 'regular');\nexport const NumberCircle2 = createIconComponent('number-circle-2', 'regular');\nexport const NumberCircle3 = createIconComponent('number-circle-3', 'regular');\nexport const NumberCircle4 = createIconComponent('number-circle-4', 'regular');\nexport const NumberCircle5 = createIconComponent('number-circle-5', 'regular');\nexport const NumberCircle6 = createIconComponent('number-circle-6', 'regular');\nexport const NumberCircle7 = createIconComponent('number-circle-7', 'regular');\nexport const NumberCircle8 = createIconComponent('number-circle-8', 'regular');\nexport const NumberCircle9 = createIconComponent('number-circle-9', 'regular');\nexport const NumberSymbol = createIconComponent('number-symbol', 'regular');\nexport const NumberSymbolCircle = createIconComponent('number-symbol-circle', 'regular');\nexport const NumberSymbolSquare = createIconComponent('number-symbol-square', 'regular');\nexport const Opacity = createIconComponent('opacity', 'regular');\nexport const Open = createIconComponent('open', 'regular');\nexport const OpenOff = createIconComponent('open-off', 'regular');\nexport const Options = createIconComponent('options', 'regular');\nexport const Organization = createIconComponent('organization', 'regular');\nexport const OrganizationHorizontal = createIconComponent('organization-horizontal', 'regular');\nexport const Orientation = createIconComponent('orientation', 'regular');\nexport const Oval = createIconComponent('oval', 'regular');\nexport const Oven = createIconComponent('oven', 'regular');\nexport const Padding = createIconComponent('padding', 'regular');\nexport const PageFit = createIconComponent('page-fit', 'regular');\nexport const PaintBrush = createIconComponent('paint-brush', 'regular');\nexport const PaintBucket = createIconComponent('paint-bucket', 'regular');\nexport const Parallelogram = createIconComponent('parallelogram', 'regular');\nexport const Password = createIconComponent('password', 'regular');\nexport const Pause = createIconComponent('pause', 'regular');\nexport const PauseCircle = createIconComponent('pause-circle', 'regular');\nexport const Payment = createIconComponent('payment', 'regular');\nexport const PaymentWireless = createIconComponent('payment-wireless', 'regular');\nexport const Pen = createIconComponent('pen', 'regular');\nexport const PenOff = createIconComponent('pen-off', 'regular');\nexport const Pentagon = createIconComponent('pentagon', 'regular');\nexport const Person = createIconComponent('person', 'regular');\nexport const PersonVoice = createIconComponent('person-voice', 'regular');\nexport const Phone = createIconComponent('phone', 'regular');\nexport const Piano = createIconComponent('piano', 'regular');\nexport const Pin = createIconComponent('pin', 'regular');\nexport const Pipeline = createIconComponent('pipeline', 'regular');\nexport const Play = createIconComponent('play', 'regular');\nexport const PlayCircle = createIconComponent('play-circle', 'regular');\nexport const Playstore = createIconComponent('playstore', 'regular');\nexport const PortHdmi = createIconComponent('port-hdmi', 'regular');\nexport const PortMicroUsb = createIconComponent('port-micro-usb', 'regular');\nexport const PortUsbA = createIconComponent('port-usb-a', 'regular');\nexport const PortUsbC = createIconComponent('port-usb-c', 'regular');\nexport const Power = createIconComponent('power', 'regular');\nexport const PreviewLink = createIconComponent('preview-link', 'regular');\nexport const Previous = createIconComponent('previous', 'regular');\nexport const Print = createIconComponent('print', 'regular');\nexport const Pulse = createIconComponent('pulse', 'regular');\nexport const PulseCircle = createIconComponent('pulse-circle', 'regular');\nexport const PulseSquare = createIconComponent('pulse-square', 'regular');\nexport const Python = createIconComponent('python', 'regular');\nexport const QrCode = createIconComponent('qr-code', 'regular');\nexport const Question = createIconComponent('question', 'regular');\nexport const QuestionCircle = createIconComponent('question-circle', 'regular');\nexport const RadioButton = createIconComponent('radio-button', 'regular');\nexport const Ram = createIconComponent('ram', 'regular');\nexport const Record = createIconComponent('record', 'regular');\nexport const RecordStop = createIconComponent('record-stop', 'regular');\nexport const Rectangle = createIconComponent('rectangle', 'regular');\nexport const Refineui = createIconComponent('refineui', 'regular');\nexport const Rewind = createIconComponent('rewind', 'regular');\nexport const Rhombus = createIconComponent('rhombus', 'regular');\nexport const Ribbon = createIconComponent('ribbon', 'regular');\nexport const Road = createIconComponent('road', 'regular');\nexport const RoadCone = createIconComponent('road-cone', 'regular');\nexport const Rocket = createIconComponent('rocket', 'regular');\nexport const Rotation = createIconComponent('rotation', 'regular');\nexport const Router = createIconComponent('router', 'regular');\nexport const Rss = createIconComponent('rss', 'regular');\nexport const Ruler = createIconComponent('ruler', 'regular');\nexport const Run = createIconComponent('run', 'regular');\nexport const Save = createIconComponent('save', 'regular');\nexport const Scales = createIconComponent('scales', 'regular');\nexport const Script = createIconComponent('script', 'regular');\nexport const Search = createIconComponent('search', 'regular');\nexport const Send = createIconComponent('send', 'regular');\nexport const SerialPort = createIconComponent('serial-port', 'regular');\nexport const Server = createIconComponent('server', 'regular');\nexport const ServerLink = createIconComponent('server-link', 'regular');\nexport const ServerPlay = createIconComponent('server-play', 'regular');\nexport const ServiceBell = createIconComponent('service-bell', 'regular');\nexport const Settings = createIconComponent('settings', 'regular');\nexport const ShapeExclude = createIconComponent('shape-exclude', 'regular');\nexport const ShapeIntersect = createIconComponent('shape-intersect', 'regular');\nexport const ShapeSubtract = createIconComponent('shape-subtract', 'regular');\nexport const ShapeUnion = createIconComponent('shape-union', 'regular');\nexport const Shapes = createIconComponent('shapes', 'regular');\nexport const Share = createIconComponent('share', 'regular');\nexport const ShareAndroid = createIconComponent('share-android', 'regular');\nexport const ShareIos = createIconComponent('share-ios', 'regular');\nexport const ShellScript = createIconComponent('shell-script', 'regular');\nexport const Shield = createIconComponent('shield', 'regular');\nexport const ShoppingBag = createIconComponent('shopping-bag', 'regular');\nexport const Sim = createIconComponent('sim', 'regular');\nexport const SlideAdd = createIconComponent('slide-add', 'regular');\nexport const SlideContent = createIconComponent('slide-content', 'regular');\nexport const SlideEraser = createIconComponent('slide-eraser', 'regular');\nexport const SlideGrid = createIconComponent('slide-grid', 'regular');\nexport const SlideHide = createIconComponent('slide-hide', 'regular');\nexport const SlideLayout = createIconComponent('slide-layout', 'regular');\nexport const Smartwatch = createIconComponent('smartwatch', 'regular');\nexport const SoundSource = createIconComponent('sound-source', 'regular');\nexport const Spacebar = createIconComponent('spacebar', 'regular');\nexport const SportBaseball = createIconComponent('sport-baseball', 'regular');\nexport const SportBasketball = createIconComponent('sport-basketball', 'regular');\nexport const SportSoccer = createIconComponent('sport-soccer', 'regular');\nexport const SprayCan = createIconComponent('spray-can', 'regular');\nexport const Square = createIconComponent('square', 'regular');\nexport const SquareHint = createIconComponent('square-hint', 'regular');\nexport const SquareMultiple = createIconComponent('square-multiple', 'regular');\nexport const Star = createIconComponent('star', 'regular');\nexport const Stop = createIconComponent('stop', 'regular');\nexport const Subtract = createIconComponent('subtract', 'regular');\nexport const Swift = createIconComponent('swift', 'regular');\nexport const Tab = createIconComponent('tab', 'regular');\nexport const Tablet = createIconComponent('tablet', 'regular');\nexport const Tag = createIconComponent('tag', 'regular');\nexport const Target = createIconComponent('target', 'regular');\nexport const Temperature = createIconComponent('temperature', 'regular');\nexport const Tent = createIconComponent('tent', 'regular');\nexport const Text = createIconComponent('text', 'regular');\nexport const TextAlignCenter = createIconComponent('text-align-center', 'regular');\nexport const TextAlignJustify = createIconComponent('text-align-justify', 'regular');\nexport const TextAlignLeft = createIconComponent('text-align-left', 'regular');\nexport const TextAlignRight = createIconComponent('text-align-right', 'regular');\nexport const Textbox = createIconComponent('textbox', 'regular');\nexport const TextboxAlignBottom = createIconComponent('textbox-align-bottom', 'regular');\nexport const TextboxAlignBottomCenter = createIconComponent('textbox-align-bottom-center', 'regular');\nexport const TextboxAlignBottomLeft = createIconComponent('textbox-align-bottom-left', 'regular');\nexport const TextboxAlignBottomRight = createIconComponent('textbox-align-bottom-right', 'regular');\nexport const TextboxAlignCenter = createIconComponent('textbox-align-center', 'regular');\nexport const TextboxAlignMiddle = createIconComponent('textbox-align-middle', 'regular');\nexport const TextboxAlignMiddleLeft = createIconComponent('textbox-align-middle-left', 'regular');\nexport const TextboxAlignMiddleRight = createIconComponent('textbox-align-middle-right', 'regular');\nexport const TextboxAlignTop = createIconComponent('textbox-align-top', 'regular');\nexport const TextboxAlignTopCenter = createIconComponent('textbox-align-top-center', 'regular');\nexport const TextboxAlignTopLeft = createIconComponent('textbox-align-top-left', 'regular');\nexport const TextboxAlignTopRight = createIconComponent('textbox-align-top-right', 'regular');\nexport const Thinking = createIconComponent('thinking', 'regular');\nexport const Ticket = createIconComponent('ticket', 'regular');\nexport const Timer = createIconComponent('timer', 'regular');\nexport const ToggleLeft = createIconComponent('toggle-left', 'regular');\nexport const ToggleMultiple = createIconComponent('toggle-multiple', 'regular');\nexport const ToggleRight = createIconComponent('toggle-right', 'regular');\nexport const Toolbox = createIconComponent('toolbox', 'regular');\nexport const Trophy = createIconComponent('trophy', 'regular');\nexport const Tv = createIconComponent('tv', 'regular');\nexport const Typescript = createIconComponent('typescript', 'regular');\nexport const Umbrella = createIconComponent('umbrella', 'regular');\nexport const Usb = createIconComponent('usb', 'regular');\nexport const UsbCable = createIconComponent('usb-cable', 'regular');\nexport const Verified = createIconComponent('verified', 'regular');\nexport const Video = createIconComponent('video', 'regular');\nexport const VideoClip = createIconComponent('video-clip', 'regular');\nexport const VideoPlayPause = createIconComponent('video-play-pause', 'regular');\nexport const Voicemail = createIconComponent('voicemail', 'regular');\nexport const Vote = createIconComponent('vote', 'regular');\nexport const WalkieTalkie = createIconComponent('walkie-talkie', 'regular');\nexport const Wallet = createIconComponent('wallet', 'regular');\nexport const Wand = createIconComponent('wand', 'regular');\nexport const Warning = createIconComponent('warning', 'regular');\nexport const Washer = createIconComponent('washer', 'regular');\nexport const Water = createIconComponent('water', 'regular');\nexport const WeatherBlowingSnow = createIconComponent('weather-blowing-snow', 'regular');\nexport const WeatherCloudy = createIconComponent('weather-cloudy', 'regular');\nexport const WeatherRain = createIconComponent('weather-rain', 'regular');\nexport const WeatherSnow = createIconComponent('weather-snow', 'regular');\nexport const WeatherSnowflake = createIconComponent('weather-snowflake', 'regular');\nexport const WeatherSunny = createIconComponent('weather-sunny', 'regular');\nexport const WeatherThunderstorm = createIconComponent('weather-thunderstorm', 'regular');\nexport const Web = createIconComponent('web', 'regular');\nexport const Wifi1 = createIconComponent('wifi-1', 'regular');\nexport const Wifi2 = createIconComponent('wifi-2', 'regular');\nexport const Wifi3 = createIconComponent('wifi-3', 'regular');\nexport const Wifi4 = createIconComponent('wifi-4', 'regular');\nexport const Windows = createIconComponent('windows', 'regular');\nexport const Wrench = createIconComponent('wrench', 'regular');\nexport const Xray = createIconComponent('xray', 'regular');\nexport const Zoom = createIconComponent('zoom', 'regular');\nexport const ZoomIn = createIconComponent('zoom-in', 'regular');\nexport const ZoomOut = createIconComponent('zoom-out', 'regular');","// === Filled style icons ===\n// This file is auto-generated. Do not modify.\n\nimport { createIconComponent } from './utils';\n\nexport const AccessTimeFilled = createIconComponent('access-time', 'filled');\nexport const AccessibilityFilled = createIconComponent('accessibility', 'filled');\nexport const AddFilled = createIconComponent('add', 'filled');\nexport const AddCircleFilled = createIconComponent('add-circle', 'filled');\nexport const AddSquareFilled = createIconComponent('add-square', 'filled');\nexport const AirplaneFilled = createIconComponent('airplane', 'filled');\nexport const AlbumFilled = createIconComponent('album', 'filled');\nexport const AlertFilled = createIconComponent('alert', 'filled');\nexport const AlertBadgeFilled = createIconComponent('alert-badge', 'filled');\nexport const AlertOffFilled = createIconComponent('alert-off', 'filled');\nexport const AlignBottomFilled = createIconComponent('align-bottom', 'filled');\nexport const AlignCenterHorizontalFilled = createIconComponent('align-center-horizontal', 'filled');\nexport const AlignCenterVerticalFilled = createIconComponent('align-center-vertical', 'filled');\nexport const AlignLeftFilled = createIconComponent('align-left', 'filled');\nexport const AlignRightFilled = createIconComponent('align-right', 'filled');\nexport const AlignTopFilled = createIconComponent('align-top', 'filled');\nexport const AndroidFilled = createIconComponent('android', 'filled');\nexport const AppFolderFilled = createIconComponent('app-folder', 'filled');\nexport const AppRecentFilled = createIconComponent('app-recent', 'filled');\nexport const AppTitleFilled = createIconComponent('app-title', 'filled');\nexport const AppstoreFilled = createIconComponent('appstore', 'filled');\nexport const AutosumFilled = createIconComponent('autosum', 'filled');\nexport const BackpackFilled = createIconComponent('backpack', 'filled');\nexport const BackspaceFilled = createIconComponent('backspace', 'filled');\nexport const BadgeFilled = createIconComponent('badge', 'filled');\nexport const BalloonFilled = createIconComponent('balloon', 'filled');\nexport const BarChartHorizontalFilled = createIconComponent('bar-chart-horizontal', 'filled');\nexport const BarChartHorizontalDescendingFilled = createIconComponent('bar-chart-horizontal-descending', 'filled');\nexport const BarChartVerticalFilled = createIconComponent('bar-chart-vertical', 'filled');\nexport const BarChartVerticalDescendingFilled = createIconComponent('bar-chart-vertical-descending', 'filled');\nexport const BarcodeScannerFilled = createIconComponent('barcode-scanner', 'filled');\nexport const Battery0Filled = createIconComponent('battery-0', 'filled');\nexport const Battery10Filled = createIconComponent('battery-10', 'filled');\nexport const Battery100Filled = createIconComponent('battery-100', 'filled');\nexport const Battery20Filled = createIconComponent('battery-20', 'filled');\nexport const Battery30Filled = createIconComponent('battery-30', 'filled');\nexport const Battery40Filled = createIconComponent('battery-40', 'filled');\nexport const Battery50Filled = createIconComponent('battery-50', 'filled');\nexport const Battery60Filled = createIconComponent('battery-60', 'filled');\nexport const Battery70Filled = createIconComponent('battery-70', 'filled');\nexport const Battery80Filled = createIconComponent('battery-80', 'filled');\nexport const Battery90Filled = createIconComponent('battery-90', 'filled');\nexport const BlockFilled = createIconComponent('block', 'filled');\nexport const BluetoothFilled = createIconComponent('bluetooth', 'filled');\nexport const BlurFilled = createIconComponent('blur', 'filled');\nexport const BoardFilled = createIconComponent('board', 'filled');\nexport const BookFilled = createIconComponent('book', 'filled');\nexport const BookmarkFilled = createIconComponent('bookmark', 'filled');\nexport const BugFilled = createIconComponent('bug', 'filled');\nexport const CalculatorFilled = createIconComponent('calculator', 'filled');\nexport const CalendarFilled = createIconComponent('calendar', 'filled');\nexport const CameraFilled = createIconComponent('camera', 'filled');\nexport const CartFilled = createIconComponent('cart', 'filled');\nexport const CartonBoxFilled = createIconComponent('carton-box', 'filled');\nexport const ChartFilled = createIconComponent('chart', 'filled');\nexport const ChatFilled = createIconComponent('chat', 'filled');\nexport const ChatAddFilled = createIconComponent('chat-add', 'filled');\nexport const ChatEmptyFilled = createIconComponent('chat-empty', 'filled');\nexport const CheckmarkFilled = createIconComponent('checkmark', 'filled');\nexport const ChessFilled = createIconComponent('chess', 'filled');\nexport const ChevronDownFilled = createIconComponent('chevron-down', 'filled');\nexport const ChevronLeftFilled = createIconComponent('chevron-left', 'filled');\nexport const ChevronRightFilled = createIconComponent('chevron-right', 'filled');\nexport const ChevronUpFilled = createIconComponent('chevron-up', 'filled');\nexport const CircleFilled = createIconComponent('circle', 'filled');\nexport const ClipboardFilled = createIconComponent('clipboard', 'filled');\nexport const ClockFilled = createIconComponent('clock', 'filled');\nexport const ClockAlarmFilled = createIconComponent('clock-alarm', 'filled');\nexport const CloudFilled = createIconComponent('cloud', 'filled');\nexport const CloverFilled = createIconComponent('clover', 'filled');\nexport const CodeFilled = createIconComponent('code', 'filled');\nexport const CodeBlockFilled = createIconComponent('code-block', 'filled');\nexport const CommaFilled = createIconComponent('comma', 'filled');\nexport const CommentFilled = createIconComponent('comment', 'filled');\nexport const ConeFilled = createIconComponent('cone', 'filled');\nexport const ContrastFilled = createIconComponent('contrast', 'filled');\nexport const ControlButtonFilled = createIconComponent('control-button', 'filled');\nexport const CookieFilled = createIconComponent('cookie', 'filled');\nexport const CopyFilled = createIconComponent('copy', 'filled');\nexport const CouchFilled = createIconComponent('couch', 'filled');\nexport const CpuFilled = createIconComponent('cpu', 'filled');\nexport const CropFilled = createIconComponent('crop', 'filled');\nexport const CrownFilled = createIconComponent('crown', 'filled');\nexport const CssFilled = createIconComponent('css', 'filled');\nexport const CubeFilled = createIconComponent('cube', 'filled');\nexport const CursorFilled = createIconComponent('cursor', 'filled');\nexport const CutFilled = createIconComponent('cut', 'filled');\nexport const DartFilled = createIconComponent('dart', 'filled');\nexport const DatabaseFilled = createIconComponent('database', 'filled');\nexport const DeleteFilled = createIconComponent('delete', 'filled');\nexport const DeleteOffFilled = createIconComponent('delete-off', 'filled');\nexport const DentistFilled = createIconComponent('dentist', 'filled');\nexport const DeskFilled = createIconComponent('desk', 'filled');\nexport const DesktopFilled = createIconComponent('desktop', 'filled');\nexport const DesktopMacFilled = createIconComponent('desktop-mac', 'filled');\nexport const DialpadFilled = createIconComponent('dialpad', 'filled');\nexport const DiamondFilled = createIconComponent('diamond', 'filled');\nexport const DismissFilled = createIconComponent('dismiss', 'filled');\nexport const DismissCircleFilled = createIconComponent('dismiss-circle', 'filled');\nexport const DismissSquareFilled = createIconComponent('dismiss-square', 'filled');\nexport const DoctorFilled = createIconComponent('doctor', 'filled');\nexport const DocumentFilled = createIconComponent('document', 'filled');\nexport const DocumentBorderFilled = createIconComponent('document-border', 'filled');\nexport const DoorFilled = createIconComponent('door', 'filled');\nexport const DragFilled = createIconComponent('drag', 'filled');\nexport const DrawerFilled = createIconComponent('drawer', 'filled');\nexport const DropFilled = createIconComponent('drop', 'filled');\nexport const DualScreenFilled = createIconComponent('dual-screen', 'filled');\nexport const DumbbellFilled = createIconComponent('dumbbell', 'filled');\nexport const DustFilled = createIconComponent('dust', 'filled');\nexport const EarthFilled = createIconComponent('earth', 'filled');\nexport const EditFilled = createIconComponent('edit', 'filled');\nexport const EditOffFilled = createIconComponent('edit-off', 'filled');\nexport const ElevatorFilled = createIconComponent('elevator', 'filled');\nexport const EmojiFilled = createIconComponent('emoji', 'filled');\nexport const EmojiAngryFilled = createIconComponent('emoji-angry', 'filled');\nexport const EmojiCoolFilled = createIconComponent('emoji-cool', 'filled');\nexport const EmojiGrimacingFilled = createIconComponent('emoji-grimacing', 'filled');\nexport const EmojiLaughFilled = createIconComponent('emoji-laugh', 'filled');\nexport const EmojiMehFilled = createIconComponent('emoji-meh', 'filled');\nexport const EmojiSadFilled = createIconComponent('emoji-sad', 'filled');\nexport const EmojiSurpriseFilled = createIconComponent('emoji-surprise', 'filled');\nexport const EngineFilled = createIconComponent('engine', 'filled');\nexport const EqualFilled = createIconComponent('equal', 'filled');\nexport const EqualCircleFilled = createIconComponent('equal-circle', 'filled');\nexport const EqualOffFilled = createIconComponent('equal-off', 'filled');\nexport const ErrorCircleFilled = createIconComponent('error-circle', 'filled');\nexport const EyeFilled = createIconComponent('eye', 'filled');\nexport const EyeOffFilled = createIconComponent('eye-off', 'filled');\nexport const EyedropperFilled = createIconComponent('eyedropper', 'filled');\nexport const EyedropperOffFilled = createIconComponent('eyedropper-off', 'filled');\nexport const FastForwardFilled = createIconComponent('fast-forward', 'filled');\nexport const FilmstripFilled = createIconComponent('filmstrip', 'filled');\nexport const FilmstripOffFilled = createIconComponent('filmstrip-off', 'filled');\nexport const FilterFilled = createIconComponent('filter', 'filled');\nexport const FireFilled = createIconComponent('fire', 'filled');\nexport const FlagFilled = createIconComponent('flag', 'filled');\nexport const FlagOffFilled = createIconComponent('flag-off', 'filled');\nexport const FlashFilled = createIconComponent('flash', 'filled');\nexport const FlashOffFilled = createIconComponent('flash-off', 'filled');\nexport const FlashlightFilled = createIconComponent('flashlight', 'filled');\nexport const FlashlightOffFilled = createIconComponent('flashlight-off', 'filled');\nexport const FlipHorizontalFilled = createIconComponent('flip-horizontal', 'filled');\nexport const FlipVerticialFilled = createIconComponent('flip-verticial', 'filled');\nexport const FolderFilled = createIconComponent('folder', 'filled');\nexport const FolderOpenFilled = createIconComponent('folder-open', 'filled');\nexport const FrameFilled = createIconComponent('frame', 'filled');\nexport const FullScreenMaximizeFilled = createIconComponent('full-screen-maximize', 'filled');\nexport const FullScreenMinimizeFilled = createIconComponent('full-screen-minimize', 'filled');\nexport const GamesFilled = createIconComponent('games', 'filled');\nexport const GanttChartFilled = createIconComponent('gantt-chart', 'filled');\nexport const GasFilled = createIconComponent('gas', 'filled');\nexport const GasStationFilled = createIconComponent('gas-station', 'filled');\nexport const GavelFilled = createIconComponent('gavel', 'filled');\nexport const GifFilled = createIconComponent('gif', 'filled');\nexport const GiftFilled = createIconComponent('gift', 'filled');\nexport const GiftCardFilled = createIconComponent('gift-card', 'filled');\nexport const GitFilled = createIconComponent('git', 'filled');\nexport const GlassesFilled = createIconComponent('glasses', 'filled');\nexport const GlobalFilled = createIconComponent('global', 'filled');\nexport const GridFilled = createIconComponent('grid', 'filled');\nexport const GuestFilled = createIconComponent('guest', 'filled');\nexport const GuitarFilled = createIconComponent('guitar', 'filled');\nexport const HammerFilled = createIconComponent('hammer', 'filled');\nexport const HardDriveFilled = createIconComponent('hard-drive', 'filled');\nexport const HatGraduationFilled = createIconComponent('hat-graduation', 'filled');\nexport const HdFilled = createIconComponent('hd', 'filled');\nexport const HdrFilled = createIconComponent('hdr', 'filled');\nexport const HdrOffFilled = createIconComponent('hdr-off', 'filled');\nexport const HeadphonesFilled = createIconComponent('headphones', 'filled');\nexport const HeadphonesMicFilled = createIconComponent('headphones-mic', 'filled');\nexport const HeadsetVrFilled = createIconComponent('headset-vr', 'filled');\nexport const HeartFilled = createIconComponent('heart', 'filled');\nexport const HeartBrokenFilled = createIconComponent('heart-broken', 'filled');\nexport const HexagonFilled = createIconComponent('hexagon', 'filled');\nexport const HighlightFilled = createIconComponent('highlight', 'filled');\nexport const HighwayFilled = createIconComponent('highway', 'filled');\nexport const HomeFilled = createIconComponent('home', 'filled');\nexport const HomeCheckmarkFilled = createIconComponent('home-checkmark', 'filled');\nexport const HourglassFilled = createIconComponent('hourglass', 'filled');\nexport const HourglassHalfFilled = createIconComponent('hourglass-half', 'filled');\nexport const HourglassOneQuarterFilled = createIconComponent('hourglass-one-quarter', 'filled');\nexport const HourglassThreeQuarterFilled = createIconComponent('hourglass-three-quarter', 'filled');\nexport const HtmlFilled = createIconComponent('html', 'filled');\nexport const ImageFilled = createIconComponent('image', 'filled');\nexport const ImageCircleFilled = createIconComponent('image-circle', 'filled');\nexport const ImportantFilled = createIconComponent('important', 'filled');\nexport const IncognitoFilled = createIconComponent('incognito', 'filled');\nexport const InfoFilled = createIconComponent('info', 'filled');\nexport const IosFilled = createIconComponent('ios', 'filled');\nexport const IosArrowLtrFilled = createIconComponent('ios-arrow-ltr', 'filled');\nexport const IosArrowRtlFilled = createIconComponent('ios-arrow-rtl', 'filled');\nexport const IosChevronLtrFilled = createIconComponent('ios-chevron-ltr', 'filled');\nexport const IosChevronRtlFilled = createIconComponent('ios-chevron-rtl', 'filled');\nexport const IotFilled = createIconComponent('iot', 'filled');\nexport const JavascriptFilled = createIconComponent('javascript', 'filled');\nexport const JoystickFilled = createIconComponent('joystick', 'filled');\nexport const JsonFilled = createIconComponent('json', 'filled');\nexport const JsonFileFilled = createIconComponent('json-file', 'filled');\nexport const KeyFilled = createIconComponent('key', 'filled');\nexport const KeyMultipleFilled = createIconComponent('key-multiple', 'filled');\nexport const KeyboardFilled = createIconComponent('keyboard', 'filled');\nexport const KeyboardBackspaceFilled = createIconComponent('keyboard-backspace', 'filled');\nexport const KeyboardCommandFilled = createIconComponent('keyboard-command', 'filled');\nexport const KeyboardLockFilled = createIconComponent('keyboard-lock', 'filled');\nexport const KeyboardOffFilled = createIconComponent('keyboard-off', 'filled');\nexport const KeyboardOptionFilled = createIconComponent('keyboard-option', 'filled');\nexport const KeyboardReturnFilled = createIconComponent('keyboard-return', 'filled');\nexport const KeyboardShiftFilled = createIconComponent('keyboard-shift', 'filled');\nexport const KeyboardShiftUppercaseFilled = createIconComponent('keyboard-shift-uppercase', 'filled');\nexport const KeyboardTabFilled = createIconComponent('keyboard-tab', 'filled');\nexport const KioskFilled = createIconComponent('kiosk', 'filled');\nexport const KotlinFilled = createIconComponent('kotlin', 'filled');\nexport const LaptopFilled = createIconComponent('laptop', 'filled');\nexport const LayerFilled = createIconComponent('layer', 'filled');\nexport const LightbulbFilled = createIconComponent('lightbulb', 'filled');\nexport const LineFilled = createIconComponent('line', 'filled');\nexport const LineDashesFilled = createIconComponent('line-dashes', 'filled');\nexport const LineHorizontal1Filled = createIconComponent('line-horizontal-1', 'filled');\nexport const LineHorizontal1DashesFilled = createIconComponent('line-horizontal-1-dashes', 'filled');\nexport const LinkFilled = createIconComponent('link', 'filled');\nexport const LocalLanguageFilled = createIconComponent('local-language', 'filled');\nexport const LocationFilled = createIconComponent('location', 'filled');\nexport const LocationArrowFilled = createIconComponent('location-arrow', 'filled');\nexport const LockClosedFilled = createIconComponent('lock-closed', 'filled');\nexport const LockOpenFilled = createIconComponent('lock-open', 'filled');\nexport const LuggageFilled = createIconComponent('luggage', 'filled');\nexport const MacosFilled = createIconComponent('macos', 'filled');\nexport const MailFilled = createIconComponent('mail', 'filled');\nexport const MailReadFilled = createIconComponent('mail-read', 'filled');\nexport const MailboxFilled = createIconComponent('mailbox', 'filled');\nexport const MapFilled = createIconComponent('map', 'filled');\nexport const MarkdownFilled = createIconComponent('markdown', 'filled');\nexport const MathSymbolsFilled = createIconComponent('math-symbols', 'filled');\nexport const MegaphoneFilled = createIconComponent('megaphone', 'filled');\nexport const MicFilled = createIconComponent('mic', 'filled');\nexport const MoonFilled = createIconComponent('moon', 'filled');\nexport const MoreCircleFilled = createIconComponent('more-circle', 'filled');\nexport const MoreHorizontalFilled = createIconComponent('more-horizontal', 'filled');\nexport const MoreVerticialFilled = createIconComponent('more-verticial', 'filled');\nexport const MouseFilled = createIconComponent('mouse', 'filled');\nexport const MovieFilled = createIconComponent('movie', 'filled');\nexport const NetworkCheckFilled = createIconComponent('network-check', 'filled');\nexport const NewsFilled = createIconComponent('news', 'filled');\nexport const NextFilled = createIconComponent('next', 'filled');\nexport const NoteFilled = createIconComponent('note', 'filled');\nexport const NotebookFilled = createIconComponent('notebook', 'filled');\nexport const NotepadFilled = createIconComponent('notepad', 'filled');\nexport const NumberCircle0Filled = createIconComponent('number-circle-0', 'filled');\nexport const NumberCircle1Filled = createIconComponent('number-circle-1', 'filled');\nexport const NumberCircle2Filled = createIconComponent('number-circle-2', 'filled');\nexport const NumberCircle3Filled = createIconComponent('number-circle-3', 'filled');\nexport const NumberCircle4Filled = createIconComponent('number-circle-4', 'filled');\nexport const NumberCircle5Filled = createIconComponent('number-circle-5', 'filled');\nexport const NumberCircle6Filled = createIconComponent('number-circle-6', 'filled');\nexport const NumberCircle7Filled = createIconComponent('number-circle-7', 'filled');\nexport const NumberCircle8Filled = createIconComponent('number-circle-8', 'filled');\nexport const NumberCircle9Filled = createIconComponent('number-circle-9', 'filled');\nexport const NumberSymbolFilled = createIconComponent('number-symbol', 'filled');\nexport const NumberSymbolCircleFilled = createIconComponent('number-symbol-circle', 'filled');\nexport const NumberSymbolSquareFilled = createIconComponent('number-symbol-square', 'filled');\nexport const OpacityFilled = createIconComponent('opacity', 'filled');\nexport const OpenFilled = createIconComponent('open', 'filled');\nexport const OpenOffFilled = createIconComponent('open-off', 'filled');\nexport const OptionsFilled = createIconComponent('options', 'filled');\nexport const OrganizationFilled = createIconComponent('organization', 'filled');\nexport const OrganizationHorizontalFilled = createIconComponent('organization-horizontal', 'filled');\nexport const OrientationFilled = createIconComponent('orientation', 'filled');\nexport const OvalFilled = createIconComponent('oval', 'filled');\nexport const OvenFilled = createIconComponent('oven', 'filled');\nexport const PaddingFilled = createIconComponent('padding', 'filled');\nexport const PageFitFilled = createIconComponent('page-fit', 'filled');\nexport const PaintBrushFilled = createIconComponent('paint-brush', 'filled');\nexport const PaintBucketFilled = createIconComponent('paint-bucket', 'filled');\nexport const ParallelogramFilled = createIconComponent('parallelogram', 'filled');\nexport const PasswordFilled = createIconComponent('password', 'filled');\nexport const PauseFilled = createIconComponent('pause', 'filled');\nexport const PauseCircleFilled = createIconComponent('pause-circle', 'filled');\nexport const PaymentFilled = createIconComponent('payment', 'filled');\nexport const PaymentWirelessFilled = createIconComponent('payment-wireless', 'filled');\nexport const PenFilled = createIconComponent('pen', 'filled');\nexport const PenOffFilled = createIconComponent('pen-off', 'filled');\nexport const PentagonFilled = createIconComponent('pentagon', 'filled');\nexport const PersonFilled = createIconComponent('person', 'filled');\nexport const PersonVoiceFilled = createIconComponent('person-voice', 'filled');\nexport const PhoneFilled = createIconComponent('phone', 'filled');\nexport const PianoFilled = createIconComponent('piano', 'filled');\nexport const PinFilled = createIconComponent('pin', 'filled');\nexport const PipelineFilled = createIconComponent('pipeline', 'filled');\nexport const PlayFilled = createIconComponent('play', 'filled');\nexport const PlayCircleFilled = createIconComponent('play-circle', 'filled');\nexport const PlaystoreFilled = createIconComponent('playstore', 'filled');\nexport const PortHdmiFilled = createIconComponent('port-hdmi', 'filled');\nexport const PortMicroUsbFilled = createIconComponent('port-micro-usb', 'filled');\nexport const PortUsbAFilled = createIconComponent('port-usb-a', 'filled');\nexport const PortUsbCFilled = createIconComponent('port-usb-c', 'filled');\nexport const PowerFilled = createIconComponent('power', 'filled');\nexport const PreviewLinkFilled = createIconComponent('preview-link', 'filled');\nexport const PreviousFilled = createIconComponent('previous', 'filled');\nexport const PrintFilled = createIconComponent('print', 'filled');\nexport const PulseFilled = createIconComponent('pulse', 'filled');\nexport const PulseCircleFilled = createIconComponent('pulse-circle', 'filled');\nexport const PulseSquareFilled = createIconComponent('pulse-square', 'filled');\nexport const PythonFilled = createIconComponent('python', 'filled');\nexport const QrCodeFilled = createIconComponent('qr-code', 'filled');\nexport const QuestionFilled = createIconComponent('question', 'filled');\nexport const QuestionCircleFilled = createIconComponent('question-circle', 'filled');\nexport const RadioButtonFilled = createIconComponent('radio-button', 'filled');\nexport const RamFilled = createIconComponent('ram', 'filled');\nexport const RecordFilled = createIconComponent('record', 'filled');\nexport const RecordStopFilled = createIconComponent('record-stop', 'filled');\nexport const RectangleFilled = createIconComponent('rectangle', 'filled');\nexport const RefineuiFilled = createIconComponent('refineui', 'filled');\nexport const RewindFilled = createIconComponent('rewind', 'filled');\nexport const RhombusFilled = createIconComponent('rhombus', 'filled');\nexport const RibbonFilled = createIconComponent('ribbon', 'filled');\nexport const RoadFilled = createIconComponent('road', 'filled');\nexport const RoadConeFilled = createIconComponent('road-cone', 'filled');\nexport const RocketFilled = createIconComponent('rocket', 'filled');\nexport const RotationFilled = createIconComponent('rotation', 'filled');\nexport const RouterFilled = createIconComponent('router', 'filled');\nexport const RssFilled = createIconComponent('rss', 'filled');\nexport const RulerFilled = createIconComponent('ruler', 'filled');\nexport const RunFilled = createIconComponent('run', 'filled');\nexport const SaveFilled = createIconComponent('save', 'filled');\nexport const ScalesFilled = createIconComponent('scales', 'filled');\nexport const ScriptFilled = createIconComponent('script', 'filled');\nexport const SearchFilled = createIconComponent('search', 'filled');\nexport const SendFilled = createIconComponent('send', 'filled');\nexport const SerialPortFilled = createIconComponent('serial-port', 'filled');\nexport const ServerFilled = createIconComponent('server', 'filled');\nexport const ServerLinkFilled = createIconComponent('server-link', 'filled');\nexport const ServerPlayFilled = createIconComponent('server-play', 'filled');\nexport const ServiceBellFilled = createIconComponent('service-bell', 'filled');\nexport const SettingsFilled = createIconComponent('settings', 'filled');\nexport const ShapeExcludeFilled = createIconComponent('shape-exclude', 'filled');\nexport const ShapeIntersectFilled = createIconComponent('shape-intersect', 'filled');\nexport const ShapeSubtractFilled = createIconComponent('shape-subtract', 'filled');\nexport const ShapeUnionFilled = createIconComponent('shape-union', 'filled');\nexport const ShapesFilled = createIconComponent('shapes', 'filled');\nexport const ShareFilled = createIconComponent('share', 'filled');\nexport const ShareAndroidFilled = createIconComponent('share-android', 'filled');\nexport const ShareIosFilled = createIconComponent('share-ios', 'filled');\nexport const ShellScriptFilled = createIconComponent('shell-script', 'filled');\nexport const ShieldFilled = createIconComponent('shield', 'filled');\nexport const ShoppingBagFilled = createIconComponent('shopping-bag', 'filled');\nexport const SimFilled = createIconComponent('sim', 'filled');\nexport const SlideAddFilled = createIconComponent('slide-add', 'filled');\nexport const SlideContentFilled = createIconComponent('slide-content', 'filled');\nexport const SlideEraserFilled = createIconComponent('slide-eraser', 'filled');\nexport const SlideGridFilled = createIconComponent('slide-grid', 'filled');\nexport const SlideHideFilled = createIconComponent('slide-hide', 'filled');\nexport const SlideLayoutFilled = createIconComponent('slide-layout', 'filled');\nexport const SmartwatchFilled = createIconComponent('smartwatch', 'filled');\nexport const SoundSourceFilled = createIconComponent('sound-source', 'filled');\nexport const SpacebarFilled = createIconComponent('spacebar', 'filled');\nexport const SportBaseballFilled = createIconComponent('sport-baseball', 'filled');\nexport const SportBasketballFilled = createIconComponent('sport-basketball', 'filled');\nexport const SportSoccerFilled = createIconComponent('sport-soccer', 'filled');\nexport const SprayCanFilled = createIconComponent('spray-can', 'filled');\nexport const SquareFilled = createIconComponent('square', 'filled');\nexport const SquareHintFilled = createIconComponent('square-hint', 'filled');\nexport const SquareMultipleFilled = createIconComponent('square-multiple', 'filled');\nexport const StarFilled = createIconComponent('star', 'filled');\nexport const StopFilled = createIconComponent('stop', 'filled');\nexport const SubtractFilled = createIconComponent('subtract', 'filled');\nexport const SwiftFilled = createIconComponent('swift', 'filled');\nexport const TabFilled = createIconComponent('tab', 'filled');\nexport const TabletFilled = createIconComponent('tablet', 'filled');\nexport const TagFilled = createIconComponent('tag', 'filled');\nexport const TargetFilled = createIconComponent('target', 'filled');\nexport const TemperatureFilled = createIconComponent('temperature', 'filled');\nexport const TentFilled = createIconComponent('tent', 'filled');\nexport const TextFilled = createIconComponent('text', 'filled');\nexport const TextAlignCenterFilled = createIconComponent('text-align-center', 'filled');\nexport const TextAlignJustifyFilled = createIconComponent('text-align-justify', 'filled');\nexport const TextAlignLeftFilled = createIconComponent('text-align-left', 'filled');\nexport const TextAlignRightFilled = createIconComponent('text-align-right', 'filled');\nexport const TextboxFilled = createIconComponent('textbox', 'filled');\nexport const TextboxAlignBottomFilled = createIconComponent('textbox-align-bottom', 'filled');\nexport const TextboxAlignBottomCenterFilled = createIconComponent('textbox-align-bottom-center', 'filled');\nexport const TextboxAlignBottomLeftFilled = createIconComponent('textbox-align-bottom-left', 'filled');\nexport const TextboxAlignBottomRightFilled = createIconComponent('textbox-align-bottom-right', 'filled');\nexport const TextboxAlignCenterFilled = createIconComponent('textbox-align-center', 'filled');\nexport const TextboxAlignMiddleFilled = createIconComponent('textbox-align-middle', 'filled');\nexport const TextboxAlignMiddleLeftFilled = createIconComponent('textbox-align-middle-left', 'filled');\nexport const TextboxAlignMiddleRightFilled = createIconComponent('textbox-align-middle-right', 'filled');\nexport const TextboxAlignTopFilled = createIconComponent('textbox-align-top', 'filled');\nexport const TextboxAlignTopCenterFilled = createIconComponent('textbox-align-top-center', 'filled');\nexport const TextboxAlignTopLeftFilled = createIconComponent('textbox-align-top-left', 'filled');\nexport const TextboxAlignTopRightFilled = createIconComponent('textbox-align-top-right', 'filled');\nexport const ThinkingFilled = createIconComponent('thinking', 'filled');\nexport const TicketFilled = createIconComponent('ticket', 'filled');\nexport const TimerFilled = createIconComponent('timer', 'filled');\nexport const ToggleLeftFilled = createIconComponent('toggle-left', 'filled');\nexport const ToggleMultipleFilled = createIconComponent('toggle-multiple', 'filled');\nexport const ToggleRightFilled = createIconComponent('toggle-right', 'filled');\nexport const ToolboxFilled = createIconComponent('toolbox', 'filled');\nexport const TrophyFilled = createIconComponent('trophy', 'filled');\nexport const TvFilled = createIconComponent('tv', 'filled');\nexport const TypescriptFilled = createIconComponent('typescript', 'filled');\nexport const UmbrellaFilled = createIconComponent('umbrella', 'filled');\nexport const UsbFilled = createIconComponent('usb', 'filled');\nexport const UsbCableFilled = createIconComponent('usb-cable', 'filled');\nexport const VerifiedFilled = createIconComponent('verified', 'filled');\nexport const VideoFilled = createIconComponent('video', 'filled');\nexport const VideoClipFilled = createIconComponent('video-clip', 'filled');\nexport const VideoPlayPauseFilled = createIconComponent('video-play-pause', 'filled');\nexport const VoicemailFilled = createIconComponent('voicemail', 'filled');\nexport const VoteFilled = createIconComponent('vote', 'filled');\nexport const WalkieTalkieFilled = createIconComponent('walkie-talkie', 'filled');\nexport const WalletFilled = createIconComponent('wallet', 'filled');\nexport const WandFilled = createIconComponent('wand', 'filled');\nexport const WarningFilled = createIconComponent('warning', 'filled');\nexport const WasherFilled = createIconComponent('washer', 'filled');\nexport const WaterFilled = createIconComponent('water', 'filled');\nexport const WeatherBlowingSnowFilled = createIconComponent('weather-blowing-snow', 'filled');\nexport const WeatherCloudyFilled = createIconComponent('weather-cloudy', 'filled');\nexport const WeatherRainFilled = createIconComponent('weather-rain', 'filled');\nexport const WeatherSnowFilled = createIconComponent('weather-snow', 'filled');\nexport const WeatherSnowflakeFilled = createIconComponent('weather-snowflake', 'filled');\nexport const WeatherSunnyFilled = createIconComponent('weather-sunny', 'filled');\nexport const WeatherThunderstormFilled = createIconComponent('weather-thunderstorm', 'filled');\nexport const WebFilled = createIconComponent('web', 'filled');\nexport const Wifi1Filled = createIconComponent('wifi-1', 'filled');\nexport const Wifi2Filled = createIconComponent('wifi-2', 'filled');\nexport const Wifi3Filled = createIconComponent('wifi-3', 'filled');\nexport const Wifi4Filled = createIconComponent('wifi-4', 'filled');\nexport const WindowsFilled = createIconComponent('windows', 'filled');\nexport const WrenchFilled = createIconComponent('wrench', 'filled');\nexport const XrayFilled = createIconComponent('xray', 'filled');\nexport const ZoomFilled = createIconComponent('zoom', 'filled');\nexport const ZoomInFilled = createIconComponent('zoom-in', 'filled');\nexport const ZoomOutFilled = createIconComponent('zoom-out', 'filled');"],"names":["React","IconUtils","Text"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
1
+ {"version":3,"file":"index.umd.js","sources":["../src/IconUtils.ts","../src/utils.ts","../src/regular-icons.ts","../src/filled-icons.ts"],"sourcesContent":["import React from 'react';\nimport metadata from './metadata.json';\n\nfunction nameToSlug(name: string): string {\n return String(name).toLowerCase().trim().replace(/\\s+/g, '-');\n}\nfunction normalizeSlug(s: string): string {\n return nameToSlug(String(s).replace(/_/g, '-'));\n}\nfunction pascalToSlug(name: string): string {\n return String(name).replace(/([A-Z])/g, '-$1').toLowerCase().replace(/^-/, '');\n}\nfunction normalizeIconName(name: string): string {\n return String(name).trim().replace(/\\s+/g, ' ');\n}\n\nexport interface IconProps {\n style?: any;\n className?: string;\n onPress?: () => void;\n [key: string]: any;\n}\n\nexport interface IconData {\n name: string;\n slug: string;\n size: number[];\n style: string[];\n keyword: string;\n description: string;\n files: any[];\n unicodeMapping: any;\n}\n\nexport interface Metadata {\n totalIcons: number;\n supportedSizes: number[];\n supportedStyles: string[];\n fontFamilies: any;\n icons: { [key: string]: IconData };\n}\n\nclass ReactNativeIconUtils {\n private metadata: Metadata;\n private fontFamilies: any;\n\n constructor() {\n this.metadata = metadata;\n this.fontFamilies = metadata.fontFamilies;\n }\n\n /** Resolve icon data by name or by slug (handles \"weather-sunny\" / \"weather_sunny\", extra spaces) */\n private getIconData(iconName: string): IconData | null {\n if (!iconName || typeof iconName !== 'string') return null;\n const direct = this.metadata.icons[iconName];\n if (direct) return direct;\n const slugForDirect = nameToSlug(iconName);\n if (this.metadata.icons[slugForDirect]) return this.metadata.icons[slugForDirect];\n if (this.metadata.icons[iconName.replace(/-/g, '_')]) return this.metadata.icons[iconName.replace(/-/g, '_')];\n if (this.metadata.icons[iconName.replace(/_/g, '-')]) return this.metadata.icons[iconName.replace(/_/g, '-')];\n const keys = Object.keys(this.metadata.icons);\n const matchKey = keys.find(\n (k) =>\n k === iconName ||\n normalizeSlug(k) === slugForDirect ||\n k.replace(/-/g, '_') === iconName ||\n k.replace(/_/g, '-') === iconName\n );\n if (matchKey) return this.metadata.icons[matchKey];\n const normalized = normalizeIconName(iconName);\n if (normalized && this.metadata.icons[normalized]) return this.metadata.icons[normalized];\n const slug = slugForDirect;\n const bySlug = Object.values(this.metadata.icons).find(\n (icon) =>\n icon.slug === slug ||\n icon.slug === slug.replace(/-/g, '_') ||\n icon.slug === slug.replace(/_/g, '-') ||\n normalizeSlug(icon.slug) === slug ||\n normalizeSlug(icon.name) === slug\n );\n if (bySlug) return bySlug;\n const slugPascal = pascalToSlug(iconName);\n return Object.values(this.metadata.icons).find(\n (icon) =>\n icon.slug === slugPascal ||\n icon.slug === slugPascal.replace(/-/g, '_') ||\n icon.slug === slugPascal.replace(/_/g, '-') ||\n normalizeSlug(icon.slug) === slugPascal ||\n normalizeSlug(icon.name) === slugPascal\n ) || null;\n }\n\n // === Icon Style Method ===\n // Dynamic icon creation method\n createIconMethod(iconName: string, props: IconProps = {}): React.ReactElement | null {\n // Unsized method: AccessibilityRegular, AccessibilityFilled\n const unsizedMatch = iconName.match(/^([A-Za-z]+)(Regular|Filled)$/);\n if (unsizedMatch) {\n const [, iconNamePart, iconStyle] = unsizedMatch;\n return this.createUnsizedIcon(iconNamePart, iconStyle.toLowerCase() as 'regular' | 'filled', props);\n }\n\n // Sized method: Accessibility16Regular, Accessibility24Filled\n const sizedMatch = iconName.match(/^([A-Za-z]+)(\\d+)(Regular|Filled)$/);\n if (sizedMatch) {\n const [, iconNamePart, sizeStr, iconStyle] = sizedMatch;\n const size = parseInt(sizeStr, 10);\n return this.createSizedIcon(iconNamePart, size, iconStyle.toLowerCase() as 'regular' | 'filled', props);\n }\n\n return null;\n }\n\n // Create unsized icon (default 24px)\n private createUnsizedIcon(iconName: string, style: 'regular' | 'filled', props: IconProps = {}): React.ReactElement | null {\n const iconData = this.getIconData(iconName);\n if (!iconData?.unicodeMapping) return null;\n\n const defaultSize = 24;\n const unicodeInfo = iconData.unicodeMapping[String(defaultSize)]?.[style];\n if (!unicodeInfo || unicodeInfo.unicode == null) return null;\n\n const fontFamily = this.fontFamilies[style].font_family;\n \n return React.createElement('Text', {\n ...props,\n style: {\n fontFamily,\n fontSize: defaultSize,\n lineHeight: defaultSize,\n ...props.style\n },\n children: String.fromCodePoint(unicodeInfo.unicode)\n });\n }\n\n // Create sized icon\n private createSizedIcon(iconName: string, size: number, style: 'regular' | 'filled', props: IconProps = {}): React.ReactElement | null {\n const iconData = this.getIconData(iconName);\n if (!iconData?.unicodeMapping) return null;\n\n const unicodeInfo = iconData.unicodeMapping[String(size)]?.[style];\n if (!unicodeInfo || unicodeInfo.unicode == null) return null;\n\n const fontFamily = this.fontFamilies[style].font_family;\n \n return React.createElement('Text', {\n ...props,\n style: {\n fontFamily,\n fontSize: size,\n lineHeight: size,\n ...props.style\n },\n children: String.fromCodePoint(unicodeInfo.unicode)\n });\n }\n\n // Utility methods\n getIconChar(iconName: string, style: 'regular' | 'filled' = 'regular', size: number = 24): string | null {\n const iconData = this.getIconData(iconName);\n if (!iconData?.unicodeMapping) return null;\n\n const unicodeInfo = iconData.unicodeMapping[String(size)]?.[style];\n if (!unicodeInfo || unicodeInfo.unicode == null) return null;\n\n return String.fromCodePoint(unicodeInfo.unicode);\n }\n\n getIconClass(iconName: string, style: 'regular' | 'filled' = 'regular', size: number = 24): string | null {\n const iconData = this.getIconData(iconName);\n if (!iconData?.unicodeMapping) return null;\n\n const unicodeInfo = iconData.unicodeMapping[String(size)]?.[style];\n if (!unicodeInfo) return null;\n\n return unicodeInfo.cssClass;\n }\n\n getFontFamily(style: 'regular' | 'filled' = 'regular'): string {\n return this.fontFamilies[style].font_family;\n }\n\n getAvailableIcons(): string[] {\n return Object.keys(this.metadata.icons);\n }\n\n getFontFamilies(): any {\n return this.fontFamilies;\n }\n\n getAvailableSizes(): number[] {\n return this.metadata.supportedSizes;\n }\n\n getIconInfo(iconName: string): IconData | null {\n return this.getIconData(iconName);\n }\n\n searchIcons(query: string): string[] {\n const searchTerm = query.toLowerCase();\n return Object.keys(this.metadata.icons).filter(iconName => \n iconName.toLowerCase().includes(searchTerm) ||\n this.metadata.icons[iconName].description.toLowerCase().includes(searchTerm)\n );\n }\n}\n\n// Create singleton instance\nconst reactNativeIconUtils = new ReactNativeIconUtils();\n\nexport default reactNativeIconUtils;\nexport { ReactNativeIconUtils };\n","import React from 'react';\nimport { Text, TextProps } from 'react-native';\nimport IconUtils from './IconUtils';\n\nexport interface IconProps extends TextProps {\n size?: number;\n color?: string;\n iconStyle?: 'regular' | 'filled';\n [key: string]: any;\n}\n\n// === Icon component creation method ===\nexport const createIconComponent = (iconName: string, style: 'regular' | 'filled') => {\n return (props: IconProps) => {\n const iconChar = IconUtils.getIconChar(iconName, style, props.size || 24);\n const fontFamily = IconUtils.getFontFamily(style);\n\n if (!iconChar) return null;\n\n const styleObj = {\n fontFamily,\n fontSize: props.size || 24,\n color: props.color || 'currentColor',\n lineHeight: 1,\n };\n\n return React.createElement(Text as any, {\n style: [styleObj, props.style],\n ...props,\n }, iconChar);\n };\n};\n\n// === Utility functions ===\nexport { default as IconUtils } from './IconUtils';\n\nexport const getIconChar = (iconName: string, style: 'regular' | 'filled' = 'regular', size: number = 24) => {\n return IconUtils.getIconChar(iconName, style, size);\n};\n\nexport const getIconClass = (iconName: string, style: 'regular' | 'filled' = 'regular', size: number = 24) => {\n return IconUtils.getIconClass(iconName, style, size);\n};\n\nexport const getFontFamily = (style: 'regular' | 'filled' = 'regular') => {\n return IconUtils.getFontFamily(style);\n};","// === Regular style icons ===\n// This file is auto-generated. Do not modify.\n\nimport { createIconComponent } from './utils';\n\nexport const AccessTime = createIconComponent('access-time', 'regular');\nexport const Accessibility = createIconComponent('accessibility', 'regular');\nexport const Add = createIconComponent('add', 'regular');\nexport const AddCircle = createIconComponent('add-circle', 'regular');\nexport const AddSquare = createIconComponent('add-square', 'regular');\nexport const Airplane = createIconComponent('airplane', 'regular');\nexport const Album = createIconComponent('album', 'regular');\nexport const Alert = createIconComponent('alert', 'regular');\nexport const AlertBadge = createIconComponent('alert-badge', 'regular');\nexport const AlertOff = createIconComponent('alert-off', 'regular');\nexport const AlignBottom = createIconComponent('align-bottom', 'regular');\nexport const AlignCenterHorizontal = createIconComponent('align-center-horizontal', 'regular');\nexport const AlignCenterVertical = createIconComponent('align-center-vertical', 'regular');\nexport const AlignLeft = createIconComponent('align-left', 'regular');\nexport const AlignRight = createIconComponent('align-right', 'regular');\nexport const AlignTop = createIconComponent('align-top', 'regular');\nexport const Android = createIconComponent('android', 'regular');\nexport const AppFolder = createIconComponent('app-folder', 'regular');\nexport const AppRecent = createIconComponent('app-recent', 'regular');\nexport const AppTitle = createIconComponent('app-title', 'regular');\nexport const Appstore = createIconComponent('appstore', 'regular');\nexport const Autosum = createIconComponent('autosum', 'regular');\nexport const Backpack = createIconComponent('backpack', 'regular');\nexport const Backspace = createIconComponent('backspace', 'regular');\nexport const Badge = createIconComponent('badge', 'regular');\nexport const Balloon = createIconComponent('balloon', 'regular');\nexport const BarChartHorizontal = createIconComponent('bar-chart-horizontal', 'regular');\nexport const BarChartHorizontalDescending = createIconComponent('bar-chart-horizontal-descending', 'regular');\nexport const BarChartVertical = createIconComponent('bar-chart-vertical', 'regular');\nexport const BarChartVerticalDescending = createIconComponent('bar-chart-vertical-descending', 'regular');\nexport const BarcodeScanner = createIconComponent('barcode-scanner', 'regular');\nexport const Battery0 = createIconComponent('battery-0', 'regular');\nexport const Battery10 = createIconComponent('battery-10', 'regular');\nexport const Battery100 = createIconComponent('battery-100', 'regular');\nexport const Battery20 = createIconComponent('battery-20', 'regular');\nexport const Battery30 = createIconComponent('battery-30', 'regular');\nexport const Battery40 = createIconComponent('battery-40', 'regular');\nexport const Battery50 = createIconComponent('battery-50', 'regular');\nexport const Battery60 = createIconComponent('battery-60', 'regular');\nexport const Battery70 = createIconComponent('battery-70', 'regular');\nexport const Battery80 = createIconComponent('battery-80', 'regular');\nexport const Battery90 = createIconComponent('battery-90', 'regular');\nexport const Block = createIconComponent('block', 'regular');\nexport const Bluetooth = createIconComponent('bluetooth', 'regular');\nexport const Blur = createIconComponent('blur', 'regular');\nexport const Board = createIconComponent('board', 'regular');\nexport const Book = createIconComponent('book', 'regular');\nexport const Bookmark = createIconComponent('bookmark', 'regular');\nexport const Bug = createIconComponent('bug', 'regular');\nexport const Calculator = createIconComponent('calculator', 'regular');\nexport const Calendar = createIconComponent('calendar', 'regular');\nexport const Camera = createIconComponent('camera', 'regular');\nexport const Cart = createIconComponent('cart', 'regular');\nexport const CartonBox = createIconComponent('carton-box', 'regular');\nexport const Chart = createIconComponent('chart', 'regular');\nexport const Chat = createIconComponent('chat', 'regular');\nexport const ChatAdd = createIconComponent('chat-add', 'regular');\nexport const ChatEmpty = createIconComponent('chat-empty', 'regular');\nexport const Checkmark = createIconComponent('checkmark', 'regular');\nexport const Chess = createIconComponent('chess', 'regular');\nexport const ChevronDown = createIconComponent('chevron-down', 'regular');\nexport const ChevronLeft = createIconComponent('chevron-left', 'regular');\nexport const ChevronRight = createIconComponent('chevron-right', 'regular');\nexport const ChevronUp = createIconComponent('chevron-up', 'regular');\nexport const Circle = createIconComponent('circle', 'regular');\nexport const Clipboard = createIconComponent('clipboard', 'regular');\nexport const Clock = createIconComponent('clock', 'regular');\nexport const ClockAlarm = createIconComponent('clock-alarm', 'regular');\nexport const Cloud = createIconComponent('cloud', 'regular');\nexport const Clover = createIconComponent('clover', 'regular');\nexport const Code = createIconComponent('code', 'regular');\nexport const CodeBlock = createIconComponent('code-block', 'regular');\nexport const Comma = createIconComponent('comma', 'regular');\nexport const Comment = createIconComponent('comment', 'regular');\nexport const Cone = createIconComponent('cone', 'regular');\nexport const Contrast = createIconComponent('contrast', 'regular');\nexport const ControlButton = createIconComponent('control-button', 'regular');\nexport const Cookie = createIconComponent('cookie', 'regular');\nexport const Copy = createIconComponent('copy', 'regular');\nexport const Couch = createIconComponent('couch', 'regular');\nexport const Cpu = createIconComponent('cpu', 'regular');\nexport const Crop = createIconComponent('crop', 'regular');\nexport const Crown = createIconComponent('crown', 'regular');\nexport const Css = createIconComponent('css', 'regular');\nexport const Cube = createIconComponent('cube', 'regular');\nexport const Cursor = createIconComponent('cursor', 'regular');\nexport const Cut = createIconComponent('cut', 'regular');\nexport const Dart = createIconComponent('dart', 'regular');\nexport const Database = createIconComponent('database', 'regular');\nexport const Delete = createIconComponent('delete', 'regular');\nexport const DeleteOff = createIconComponent('delete-off', 'regular');\nexport const Dentist = createIconComponent('dentist', 'regular');\nexport const Desk = createIconComponent('desk', 'regular');\nexport const Desktop = createIconComponent('desktop', 'regular');\nexport const DesktopMac = createIconComponent('desktop-mac', 'regular');\nexport const Dialpad = createIconComponent('dialpad', 'regular');\nexport const Diamond = createIconComponent('diamond', 'regular');\nexport const Dismiss = createIconComponent('dismiss', 'regular');\nexport const DismissCircle = createIconComponent('dismiss-circle', 'regular');\nexport const DismissSquare = createIconComponent('dismiss-square', 'regular');\nexport const Doctor = createIconComponent('doctor', 'regular');\nexport const Document = createIconComponent('document', 'regular');\nexport const DocumentBorder = createIconComponent('document-border', 'regular');\nexport const Door = createIconComponent('door', 'regular');\nexport const Drag = createIconComponent('drag', 'regular');\nexport const Drawer = createIconComponent('drawer', 'regular');\nexport const Drop = createIconComponent('drop', 'regular');\nexport const DualScreen = createIconComponent('dual-screen', 'regular');\nexport const Dumbbell = createIconComponent('dumbbell', 'regular');\nexport const Dust = createIconComponent('dust', 'regular');\nexport const Earth = createIconComponent('earth', 'regular');\nexport const Edit = createIconComponent('edit', 'regular');\nexport const EditOff = createIconComponent('edit-off', 'regular');\nexport const Elevator = createIconComponent('elevator', 'regular');\nexport const Emoji = createIconComponent('emoji', 'regular');\nexport const EmojiAngry = createIconComponent('emoji-angry', 'regular');\nexport const EmojiCool = createIconComponent('emoji-cool', 'regular');\nexport const EmojiGrimacing = createIconComponent('emoji-grimacing', 'regular');\nexport const EmojiLaugh = createIconComponent('emoji-laugh', 'regular');\nexport const EmojiMeh = createIconComponent('emoji-meh', 'regular');\nexport const EmojiSad = createIconComponent('emoji-sad', 'regular');\nexport const EmojiSurprise = createIconComponent('emoji-surprise', 'regular');\nexport const Engine = createIconComponent('engine', 'regular');\nexport const Equal = createIconComponent('equal', 'regular');\nexport const EqualCircle = createIconComponent('equal-circle', 'regular');\nexport const EqualOff = createIconComponent('equal-off', 'regular');\nexport const ErrorCircle = createIconComponent('error-circle', 'regular');\nexport const Eye = createIconComponent('eye', 'regular');\nexport const EyeOff = createIconComponent('eye-off', 'regular');\nexport const Eyedropper = createIconComponent('eyedropper', 'regular');\nexport const EyedropperOff = createIconComponent('eyedropper-off', 'regular');\nexport const FastForward = createIconComponent('fast-forward', 'regular');\nexport const Filmstrip = createIconComponent('filmstrip', 'regular');\nexport const FilmstripOff = createIconComponent('filmstrip-off', 'regular');\nexport const Filter = createIconComponent('filter', 'regular');\nexport const Fire = createIconComponent('fire', 'regular');\nexport const Flag = createIconComponent('flag', 'regular');\nexport const FlagOff = createIconComponent('flag-off', 'regular');\nexport const Flash = createIconComponent('flash', 'regular');\nexport const FlashOff = createIconComponent('flash-off', 'regular');\nexport const Flashlight = createIconComponent('flashlight', 'regular');\nexport const FlashlightOff = createIconComponent('flashlight-off', 'regular');\nexport const FlipHorizontal = createIconComponent('flip-horizontal', 'regular');\nexport const FlipVerticial = createIconComponent('flip-verticial', 'regular');\nexport const Folder = createIconComponent('folder', 'regular');\nexport const FolderOpen = createIconComponent('folder-open', 'regular');\nexport const Frame = createIconComponent('frame', 'regular');\nexport const FullScreenMaximize = createIconComponent('full-screen-maximize', 'regular');\nexport const FullScreenMinimize = createIconComponent('full-screen-minimize', 'regular');\nexport const Games = createIconComponent('games', 'regular');\nexport const GanttChart = createIconComponent('gantt-chart', 'regular');\nexport const Gas = createIconComponent('gas', 'regular');\nexport const GasStation = createIconComponent('gas-station', 'regular');\nexport const Gavel = createIconComponent('gavel', 'regular');\nexport const Gif = createIconComponent('gif', 'regular');\nexport const Gift = createIconComponent('gift', 'regular');\nexport const GiftCard = createIconComponent('gift-card', 'regular');\nexport const Git = createIconComponent('git', 'regular');\nexport const Glasses = createIconComponent('glasses', 'regular');\nexport const Global = createIconComponent('global', 'regular');\nexport const Grid = createIconComponent('grid', 'regular');\nexport const Guest = createIconComponent('guest', 'regular');\nexport const Guitar = createIconComponent('guitar', 'regular');\nexport const Hammer = createIconComponent('hammer', 'regular');\nexport const HardDrive = createIconComponent('hard-drive', 'regular');\nexport const HatGraduation = createIconComponent('hat-graduation', 'regular');\nexport const Hd = createIconComponent('hd', 'regular');\nexport const Hdr = createIconComponent('hdr', 'regular');\nexport const HdrOff = createIconComponent('hdr-off', 'regular');\nexport const Headphones = createIconComponent('headphones', 'regular');\nexport const HeadphonesMic = createIconComponent('headphones-mic', 'regular');\nexport const HeadsetVr = createIconComponent('headset-vr', 'regular');\nexport const Heart = createIconComponent('heart', 'regular');\nexport const HeartBroken = createIconComponent('heart-broken', 'regular');\nexport const Hexagon = createIconComponent('hexagon', 'regular');\nexport const Highlight = createIconComponent('highlight', 'regular');\nexport const Highway = createIconComponent('highway', 'regular');\nexport const Home = createIconComponent('home', 'regular');\nexport const HomeCheckmark = createIconComponent('home-checkmark', 'regular');\nexport const Hourglass = createIconComponent('hourglass', 'regular');\nexport const HourglassHalf = createIconComponent('hourglass-half', 'regular');\nexport const HourglassOneQuarter = createIconComponent('hourglass-one-quarter', 'regular');\nexport const HourglassThreeQuarter = createIconComponent('hourglass-three-quarter', 'regular');\nexport const Html = createIconComponent('html', 'regular');\nexport const Image = createIconComponent('image', 'regular');\nexport const ImageCircle = createIconComponent('image-circle', 'regular');\nexport const Important = createIconComponent('important', 'regular');\nexport const Incognito = createIconComponent('incognito', 'regular');\nexport const Info = createIconComponent('info', 'regular');\nexport const Ios = createIconComponent('ios', 'regular');\nexport const IosArrowLtr = createIconComponent('ios-arrow-ltr', 'regular');\nexport const IosArrowRtl = createIconComponent('ios-arrow-rtl', 'regular');\nexport const IosChevronLtr = createIconComponent('ios-chevron-ltr', 'regular');\nexport const IosChevronRtl = createIconComponent('ios-chevron-rtl', 'regular');\nexport const Iot = createIconComponent('iot', 'regular');\nexport const Javascript = createIconComponent('javascript', 'regular');\nexport const Joystick = createIconComponent('joystick', 'regular');\nexport const Json = createIconComponent('json', 'regular');\nexport const JsonFile = createIconComponent('json-file', 'regular');\nexport const Key = createIconComponent('key', 'regular');\nexport const KeyMultiple = createIconComponent('key-multiple', 'regular');\nexport const Keyboard = createIconComponent('keyboard', 'regular');\nexport const KeyboardBackspace = createIconComponent('keyboard-backspace', 'regular');\nexport const KeyboardCommand = createIconComponent('keyboard-command', 'regular');\nexport const KeyboardLock = createIconComponent('keyboard-lock', 'regular');\nexport const KeyboardOff = createIconComponent('keyboard-off', 'regular');\nexport const KeyboardOption = createIconComponent('keyboard-option', 'regular');\nexport const KeyboardReturn = createIconComponent('keyboard-return', 'regular');\nexport const KeyboardShift = createIconComponent('keyboard-shift', 'regular');\nexport const KeyboardShiftUppercase = createIconComponent('keyboard-shift-uppercase', 'regular');\nexport const KeyboardTab = createIconComponent('keyboard-tab', 'regular');\nexport const Kiosk = createIconComponent('kiosk', 'regular');\nexport const Kotlin = createIconComponent('kotlin', 'regular');\nexport const Laptop = createIconComponent('laptop', 'regular');\nexport const Layer = createIconComponent('layer', 'regular');\nexport const Lightbulb = createIconComponent('lightbulb', 'regular');\nexport const Line = createIconComponent('line', 'regular');\nexport const LineDashes = createIconComponent('line-dashes', 'regular');\nexport const LineHorizontal1 = createIconComponent('line-horizontal-1', 'regular');\nexport const LineHorizontal1Dashes = createIconComponent('line-horizontal-1-dashes', 'regular');\nexport const Link = createIconComponent('link', 'regular');\nexport const LocalLanguage = createIconComponent('local-language', 'regular');\nexport const Location = createIconComponent('location', 'regular');\nexport const LocationArrow = createIconComponent('location-arrow', 'regular');\nexport const LockClosed = createIconComponent('lock-closed', 'regular');\nexport const LockOpen = createIconComponent('lock-open', 'regular');\nexport const Luggage = createIconComponent('luggage', 'regular');\nexport const Macos = createIconComponent('macos', 'regular');\nexport const Mail = createIconComponent('mail', 'regular');\nexport const MailRead = createIconComponent('mail-read', 'regular');\nexport const Mailbox = createIconComponent('mailbox', 'regular');\nexport const Map = createIconComponent('map', 'regular');\nexport const Markdown = createIconComponent('markdown', 'regular');\nexport const MathSymbols = createIconComponent('math-symbols', 'regular');\nexport const Megaphone = createIconComponent('megaphone', 'regular');\nexport const Mic = createIconComponent('mic', 'regular');\nexport const Moon = createIconComponent('moon', 'regular');\nexport const MoreCircle = createIconComponent('more-circle', 'regular');\nexport const MoreHorizontal = createIconComponent('more-horizontal', 'regular');\nexport const MoreVerticial = createIconComponent('more-verticial', 'regular');\nexport const Mouse = createIconComponent('mouse', 'regular');\nexport const Movie = createIconComponent('movie', 'regular');\nexport const NetworkCheck = createIconComponent('network-check', 'regular');\nexport const News = createIconComponent('news', 'regular');\nexport const Next = createIconComponent('next', 'regular');\nexport const Note = createIconComponent('note', 'regular');\nexport const Notebook = createIconComponent('notebook', 'regular');\nexport const Notepad = createIconComponent('notepad', 'regular');\nexport const NumberCircle0 = createIconComponent('number-circle-0', 'regular');\nexport const NumberCircle1 = createIconComponent('number-circle-1', 'regular');\nexport const NumberCircle2 = createIconComponent('number-circle-2', 'regular');\nexport const NumberCircle3 = createIconComponent('number-circle-3', 'regular');\nexport const NumberCircle4 = createIconComponent('number-circle-4', 'regular');\nexport const NumberCircle5 = createIconComponent('number-circle-5', 'regular');\nexport const NumberCircle6 = createIconComponent('number-circle-6', 'regular');\nexport const NumberCircle7 = createIconComponent('number-circle-7', 'regular');\nexport const NumberCircle8 = createIconComponent('number-circle-8', 'regular');\nexport const NumberCircle9 = createIconComponent('number-circle-9', 'regular');\nexport const NumberSymbol = createIconComponent('number-symbol', 'regular');\nexport const NumberSymbolCircle = createIconComponent('number-symbol-circle', 'regular');\nexport const NumberSymbolSquare = createIconComponent('number-symbol-square', 'regular');\nexport const Opacity = createIconComponent('opacity', 'regular');\nexport const Open = createIconComponent('open', 'regular');\nexport const OpenOff = createIconComponent('open-off', 'regular');\nexport const Options = createIconComponent('options', 'regular');\nexport const Organization = createIconComponent('organization', 'regular');\nexport const OrganizationHorizontal = createIconComponent('organization-horizontal', 'regular');\nexport const Orientation = createIconComponent('orientation', 'regular');\nexport const Oval = createIconComponent('oval', 'regular');\nexport const Oven = createIconComponent('oven', 'regular');\nexport const Padding = createIconComponent('padding', 'regular');\nexport const PageFit = createIconComponent('page-fit', 'regular');\nexport const PaintBrush = createIconComponent('paint-brush', 'regular');\nexport const PaintBucket = createIconComponent('paint-bucket', 'regular');\nexport const Parallelogram = createIconComponent('parallelogram', 'regular');\nexport const Password = createIconComponent('password', 'regular');\nexport const Pause = createIconComponent('pause', 'regular');\nexport const PauseCircle = createIconComponent('pause-circle', 'regular');\nexport const Payment = createIconComponent('payment', 'regular');\nexport const PaymentWireless = createIconComponent('payment-wireless', 'regular');\nexport const Pen = createIconComponent('pen', 'regular');\nexport const PenOff = createIconComponent('pen-off', 'regular');\nexport const Pentagon = createIconComponent('pentagon', 'regular');\nexport const Person = createIconComponent('person', 'regular');\nexport const PersonVoice = createIconComponent('person-voice', 'regular');\nexport const Phone = createIconComponent('phone', 'regular');\nexport const Piano = createIconComponent('piano', 'regular');\nexport const Pin = createIconComponent('pin', 'regular');\nexport const Pipeline = createIconComponent('pipeline', 'regular');\nexport const Play = createIconComponent('play', 'regular');\nexport const PlayCircle = createIconComponent('play-circle', 'regular');\nexport const Playstore = createIconComponent('playstore', 'regular');\nexport const PortHdmi = createIconComponent('port-hdmi', 'regular');\nexport const PortMicroUsb = createIconComponent('port-micro-usb', 'regular');\nexport const PortUsbA = createIconComponent('port-usb-a', 'regular');\nexport const PortUsbC = createIconComponent('port-usb-c', 'regular');\nexport const Power = createIconComponent('power', 'regular');\nexport const PreviewLink = createIconComponent('preview-link', 'regular');\nexport const Previous = createIconComponent('previous', 'regular');\nexport const Print = createIconComponent('print', 'regular');\nexport const Pulse = createIconComponent('pulse', 'regular');\nexport const PulseCircle = createIconComponent('pulse-circle', 'regular');\nexport const PulseSquare = createIconComponent('pulse-square', 'regular');\nexport const Python = createIconComponent('python', 'regular');\nexport const QrCode = createIconComponent('qr-code', 'regular');\nexport const Question = createIconComponent('question', 'regular');\nexport const QuestionCircle = createIconComponent('question-circle', 'regular');\nexport const RadioButton = createIconComponent('radio-button', 'regular');\nexport const Ram = createIconComponent('ram', 'regular');\nexport const Record = createIconComponent('record', 'regular');\nexport const RecordStop = createIconComponent('record-stop', 'regular');\nexport const Rectangle = createIconComponent('rectangle', 'regular');\nexport const Refineui = createIconComponent('refineui', 'regular');\nexport const Rewind = createIconComponent('rewind', 'regular');\nexport const Rhombus = createIconComponent('rhombus', 'regular');\nexport const Ribbon = createIconComponent('ribbon', 'regular');\nexport const Road = createIconComponent('road', 'regular');\nexport const RoadCone = createIconComponent('road-cone', 'regular');\nexport const Rocket = createIconComponent('rocket', 'regular');\nexport const Rotation = createIconComponent('rotation', 'regular');\nexport const Router = createIconComponent('router', 'regular');\nexport const Rss = createIconComponent('rss', 'regular');\nexport const Ruler = createIconComponent('ruler', 'regular');\nexport const Run = createIconComponent('run', 'regular');\nexport const Save = createIconComponent('save', 'regular');\nexport const Scales = createIconComponent('scales', 'regular');\nexport const Script = createIconComponent('script', 'regular');\nexport const Search = createIconComponent('search', 'regular');\nexport const Send = createIconComponent('send', 'regular');\nexport const SerialPort = createIconComponent('serial-port', 'regular');\nexport const Server = createIconComponent('server', 'regular');\nexport const ServerLink = createIconComponent('server-link', 'regular');\nexport const ServerPlay = createIconComponent('server-play', 'regular');\nexport const ServiceBell = createIconComponent('service-bell', 'regular');\nexport const Settings = createIconComponent('settings', 'regular');\nexport const ShapeExclude = createIconComponent('shape-exclude', 'regular');\nexport const ShapeIntersect = createIconComponent('shape-intersect', 'regular');\nexport const ShapeSubtract = createIconComponent('shape-subtract', 'regular');\nexport const ShapeUnion = createIconComponent('shape-union', 'regular');\nexport const Shapes = createIconComponent('shapes', 'regular');\nexport const Share = createIconComponent('share', 'regular');\nexport const ShareAndroid = createIconComponent('share-android', 'regular');\nexport const ShareIos = createIconComponent('share-ios', 'regular');\nexport const ShellScript = createIconComponent('shell-script', 'regular');\nexport const Shield = createIconComponent('shield', 'regular');\nexport const ShoppingBag = createIconComponent('shopping-bag', 'regular');\nexport const Sim = createIconComponent('sim', 'regular');\nexport const SlideAdd = createIconComponent('slide-add', 'regular');\nexport const SlideContent = createIconComponent('slide-content', 'regular');\nexport const SlideEraser = createIconComponent('slide-eraser', 'regular');\nexport const SlideGrid = createIconComponent('slide-grid', 'regular');\nexport const SlideHide = createIconComponent('slide-hide', 'regular');\nexport const SlideLayout = createIconComponent('slide-layout', 'regular');\nexport const Smartwatch = createIconComponent('smartwatch', 'regular');\nexport const SoundSource = createIconComponent('sound-source', 'regular');\nexport const Spacebar = createIconComponent('spacebar', 'regular');\nexport const SportBaseball = createIconComponent('sport-baseball', 'regular');\nexport const SportBasketball = createIconComponent('sport-basketball', 'regular');\nexport const SportSoccer = createIconComponent('sport-soccer', 'regular');\nexport const SprayCan = createIconComponent('spray-can', 'regular');\nexport const Square = createIconComponent('square', 'regular');\nexport const SquareHint = createIconComponent('square-hint', 'regular');\nexport const SquareMultiple = createIconComponent('square-multiple', 'regular');\nexport const Star = createIconComponent('star', 'regular');\nexport const Stop = createIconComponent('stop', 'regular');\nexport const Subtract = createIconComponent('subtract', 'regular');\nexport const Swift = createIconComponent('swift', 'regular');\nexport const Tab = createIconComponent('tab', 'regular');\nexport const Tablet = createIconComponent('tablet', 'regular');\nexport const Tag = createIconComponent('tag', 'regular');\nexport const Target = createIconComponent('target', 'regular');\nexport const Temperature = createIconComponent('temperature', 'regular');\nexport const Tent = createIconComponent('tent', 'regular');\nexport const Text = createIconComponent('text', 'regular');\nexport const TextAlignCenter = createIconComponent('text-align-center', 'regular');\nexport const TextAlignJustify = createIconComponent('text-align-justify', 'regular');\nexport const TextAlignLeft = createIconComponent('text-align-left', 'regular');\nexport const TextAlignRight = createIconComponent('text-align-right', 'regular');\nexport const Textbox = createIconComponent('textbox', 'regular');\nexport const TextboxAlignBottom = createIconComponent('textbox-align-bottom', 'regular');\nexport const TextboxAlignBottomCenter = createIconComponent('textbox-align-bottom-center', 'regular');\nexport const TextboxAlignBottomLeft = createIconComponent('textbox-align-bottom-left', 'regular');\nexport const TextboxAlignBottomRight = createIconComponent('textbox-align-bottom-right', 'regular');\nexport const TextboxAlignCenter = createIconComponent('textbox-align-center', 'regular');\nexport const TextboxAlignMiddle = createIconComponent('textbox-align-middle', 'regular');\nexport const TextboxAlignMiddleLeft = createIconComponent('textbox-align-middle-left', 'regular');\nexport const TextboxAlignMiddleRight = createIconComponent('textbox-align-middle-right', 'regular');\nexport const TextboxAlignTop = createIconComponent('textbox-align-top', 'regular');\nexport const TextboxAlignTopCenter = createIconComponent('textbox-align-top-center', 'regular');\nexport const TextboxAlignTopLeft = createIconComponent('textbox-align-top-left', 'regular');\nexport const TextboxAlignTopRight = createIconComponent('textbox-align-top-right', 'regular');\nexport const Thinking = createIconComponent('thinking', 'regular');\nexport const Ticket = createIconComponent('ticket', 'regular');\nexport const Timer = createIconComponent('timer', 'regular');\nexport const ToggleLeft = createIconComponent('toggle-left', 'regular');\nexport const ToggleMultiple = createIconComponent('toggle-multiple', 'regular');\nexport const ToggleRight = createIconComponent('toggle-right', 'regular');\nexport const Toolbox = createIconComponent('toolbox', 'regular');\nexport const Trophy = createIconComponent('trophy', 'regular');\nexport const Tv = createIconComponent('tv', 'regular');\nexport const Typescript = createIconComponent('typescript', 'regular');\nexport const Umbrella = createIconComponent('umbrella', 'regular');\nexport const Usb = createIconComponent('usb', 'regular');\nexport const UsbCable = createIconComponent('usb-cable', 'regular');\nexport const Verified = createIconComponent('verified', 'regular');\nexport const Video = createIconComponent('video', 'regular');\nexport const VideoClip = createIconComponent('video-clip', 'regular');\nexport const VideoPlayPause = createIconComponent('video-play-pause', 'regular');\nexport const Voicemail = createIconComponent('voicemail', 'regular');\nexport const Vote = createIconComponent('vote', 'regular');\nexport const WalkieTalkie = createIconComponent('walkie-talkie', 'regular');\nexport const Wallet = createIconComponent('wallet', 'regular');\nexport const Wand = createIconComponent('wand', 'regular');\nexport const Warning = createIconComponent('warning', 'regular');\nexport const Washer = createIconComponent('washer', 'regular');\nexport const Water = createIconComponent('water', 'regular');\nexport const WeatherBlowingSnow = createIconComponent('weather-blowing-snow', 'regular');\nexport const WeatherCloudy = createIconComponent('weather-cloudy', 'regular');\nexport const WeatherRain = createIconComponent('weather-rain', 'regular');\nexport const WeatherSnow = createIconComponent('weather-snow', 'regular');\nexport const WeatherSnowflake = createIconComponent('weather-snowflake', 'regular');\nexport const WeatherSunny = createIconComponent('weather-sunny', 'regular');\nexport const WeatherThunderstorm = createIconComponent('weather-thunderstorm', 'regular');\nexport const Web = createIconComponent('web', 'regular');\nexport const Wifi1 = createIconComponent('wifi-1', 'regular');\nexport const Wifi2 = createIconComponent('wifi-2', 'regular');\nexport const Wifi3 = createIconComponent('wifi-3', 'regular');\nexport const Wifi4 = createIconComponent('wifi-4', 'regular');\nexport const Windows = createIconComponent('windows', 'regular');\nexport const Wrench = createIconComponent('wrench', 'regular');\nexport const Xray = createIconComponent('xray', 'regular');\nexport const Zoom = createIconComponent('zoom', 'regular');\nexport const ZoomIn = createIconComponent('zoom-in', 'regular');\nexport const ZoomOut = createIconComponent('zoom-out', 'regular');","// === Filled style icons ===\n// This file is auto-generated. Do not modify.\n\nimport { createIconComponent } from './utils';\n\nexport const AccessTimeFilled = createIconComponent('access-time', 'filled');\nexport const AccessibilityFilled = createIconComponent('accessibility', 'filled');\nexport const AddFilled = createIconComponent('add', 'filled');\nexport const AddCircleFilled = createIconComponent('add-circle', 'filled');\nexport const AddSquareFilled = createIconComponent('add-square', 'filled');\nexport const AirplaneFilled = createIconComponent('airplane', 'filled');\nexport const AlbumFilled = createIconComponent('album', 'filled');\nexport const AlertFilled = createIconComponent('alert', 'filled');\nexport const AlertBadgeFilled = createIconComponent('alert-badge', 'filled');\nexport const AlertOffFilled = createIconComponent('alert-off', 'filled');\nexport const AlignBottomFilled = createIconComponent('align-bottom', 'filled');\nexport const AlignCenterHorizontalFilled = createIconComponent('align-center-horizontal', 'filled');\nexport const AlignCenterVerticalFilled = createIconComponent('align-center-vertical', 'filled');\nexport const AlignLeftFilled = createIconComponent('align-left', 'filled');\nexport const AlignRightFilled = createIconComponent('align-right', 'filled');\nexport const AlignTopFilled = createIconComponent('align-top', 'filled');\nexport const AndroidFilled = createIconComponent('android', 'filled');\nexport const AppFolderFilled = createIconComponent('app-folder', 'filled');\nexport const AppRecentFilled = createIconComponent('app-recent', 'filled');\nexport const AppTitleFilled = createIconComponent('app-title', 'filled');\nexport const AppstoreFilled = createIconComponent('appstore', 'filled');\nexport const AutosumFilled = createIconComponent('autosum', 'filled');\nexport const BackpackFilled = createIconComponent('backpack', 'filled');\nexport const BackspaceFilled = createIconComponent('backspace', 'filled');\nexport const BadgeFilled = createIconComponent('badge', 'filled');\nexport const BalloonFilled = createIconComponent('balloon', 'filled');\nexport const BarChartHorizontalFilled = createIconComponent('bar-chart-horizontal', 'filled');\nexport const BarChartHorizontalDescendingFilled = createIconComponent('bar-chart-horizontal-descending', 'filled');\nexport const BarChartVerticalFilled = createIconComponent('bar-chart-vertical', 'filled');\nexport const BarChartVerticalDescendingFilled = createIconComponent('bar-chart-vertical-descending', 'filled');\nexport const BarcodeScannerFilled = createIconComponent('barcode-scanner', 'filled');\nexport const Battery0Filled = createIconComponent('battery-0', 'filled');\nexport const Battery10Filled = createIconComponent('battery-10', 'filled');\nexport const Battery100Filled = createIconComponent('battery-100', 'filled');\nexport const Battery20Filled = createIconComponent('battery-20', 'filled');\nexport const Battery30Filled = createIconComponent('battery-30', 'filled');\nexport const Battery40Filled = createIconComponent('battery-40', 'filled');\nexport const Battery50Filled = createIconComponent('battery-50', 'filled');\nexport const Battery60Filled = createIconComponent('battery-60', 'filled');\nexport const Battery70Filled = createIconComponent('battery-70', 'filled');\nexport const Battery80Filled = createIconComponent('battery-80', 'filled');\nexport const Battery90Filled = createIconComponent('battery-90', 'filled');\nexport const BlockFilled = createIconComponent('block', 'filled');\nexport const BluetoothFilled = createIconComponent('bluetooth', 'filled');\nexport const BlurFilled = createIconComponent('blur', 'filled');\nexport const BoardFilled = createIconComponent('board', 'filled');\nexport const BookFilled = createIconComponent('book', 'filled');\nexport const BookmarkFilled = createIconComponent('bookmark', 'filled');\nexport const BugFilled = createIconComponent('bug', 'filled');\nexport const CalculatorFilled = createIconComponent('calculator', 'filled');\nexport const CalendarFilled = createIconComponent('calendar', 'filled');\nexport const CameraFilled = createIconComponent('camera', 'filled');\nexport const CartFilled = createIconComponent('cart', 'filled');\nexport const CartonBoxFilled = createIconComponent('carton-box', 'filled');\nexport const ChartFilled = createIconComponent('chart', 'filled');\nexport const ChatFilled = createIconComponent('chat', 'filled');\nexport const ChatAddFilled = createIconComponent('chat-add', 'filled');\nexport const ChatEmptyFilled = createIconComponent('chat-empty', 'filled');\nexport const CheckmarkFilled = createIconComponent('checkmark', 'filled');\nexport const ChessFilled = createIconComponent('chess', 'filled');\nexport const ChevronDownFilled = createIconComponent('chevron-down', 'filled');\nexport const ChevronLeftFilled = createIconComponent('chevron-left', 'filled');\nexport const ChevronRightFilled = createIconComponent('chevron-right', 'filled');\nexport const ChevronUpFilled = createIconComponent('chevron-up', 'filled');\nexport const CircleFilled = createIconComponent('circle', 'filled');\nexport const ClipboardFilled = createIconComponent('clipboard', 'filled');\nexport const ClockFilled = createIconComponent('clock', 'filled');\nexport const ClockAlarmFilled = createIconComponent('clock-alarm', 'filled');\nexport const CloudFilled = createIconComponent('cloud', 'filled');\nexport const CloverFilled = createIconComponent('clover', 'filled');\nexport const CodeFilled = createIconComponent('code', 'filled');\nexport const CodeBlockFilled = createIconComponent('code-block', 'filled');\nexport const CommaFilled = createIconComponent('comma', 'filled');\nexport const CommentFilled = createIconComponent('comment', 'filled');\nexport const ConeFilled = createIconComponent('cone', 'filled');\nexport const ContrastFilled = createIconComponent('contrast', 'filled');\nexport const ControlButtonFilled = createIconComponent('control-button', 'filled');\nexport const CookieFilled = createIconComponent('cookie', 'filled');\nexport const CopyFilled = createIconComponent('copy', 'filled');\nexport const CouchFilled = createIconComponent('couch', 'filled');\nexport const CpuFilled = createIconComponent('cpu', 'filled');\nexport const CropFilled = createIconComponent('crop', 'filled');\nexport const CrownFilled = createIconComponent('crown', 'filled');\nexport const CssFilled = createIconComponent('css', 'filled');\nexport const CubeFilled = createIconComponent('cube', 'filled');\nexport const CursorFilled = createIconComponent('cursor', 'filled');\nexport const CutFilled = createIconComponent('cut', 'filled');\nexport const DartFilled = createIconComponent('dart', 'filled');\nexport const DatabaseFilled = createIconComponent('database', 'filled');\nexport const DeleteFilled = createIconComponent('delete', 'filled');\nexport const DeleteOffFilled = createIconComponent('delete-off', 'filled');\nexport const DentistFilled = createIconComponent('dentist', 'filled');\nexport const DeskFilled = createIconComponent('desk', 'filled');\nexport const DesktopFilled = createIconComponent('desktop', 'filled');\nexport const DesktopMacFilled = createIconComponent('desktop-mac', 'filled');\nexport const DialpadFilled = createIconComponent('dialpad', 'filled');\nexport const DiamondFilled = createIconComponent('diamond', 'filled');\nexport const DismissFilled = createIconComponent('dismiss', 'filled');\nexport const DismissCircleFilled = createIconComponent('dismiss-circle', 'filled');\nexport const DismissSquareFilled = createIconComponent('dismiss-square', 'filled');\nexport const DoctorFilled = createIconComponent('doctor', 'filled');\nexport const DocumentFilled = createIconComponent('document', 'filled');\nexport const DocumentBorderFilled = createIconComponent('document-border', 'filled');\nexport const DoorFilled = createIconComponent('door', 'filled');\nexport const DragFilled = createIconComponent('drag', 'filled');\nexport const DrawerFilled = createIconComponent('drawer', 'filled');\nexport const DropFilled = createIconComponent('drop', 'filled');\nexport const DualScreenFilled = createIconComponent('dual-screen', 'filled');\nexport const DumbbellFilled = createIconComponent('dumbbell', 'filled');\nexport const DustFilled = createIconComponent('dust', 'filled');\nexport const EarthFilled = createIconComponent('earth', 'filled');\nexport const EditFilled = createIconComponent('edit', 'filled');\nexport const EditOffFilled = createIconComponent('edit-off', 'filled');\nexport const ElevatorFilled = createIconComponent('elevator', 'filled');\nexport const EmojiFilled = createIconComponent('emoji', 'filled');\nexport const EmojiAngryFilled = createIconComponent('emoji-angry', 'filled');\nexport const EmojiCoolFilled = createIconComponent('emoji-cool', 'filled');\nexport const EmojiGrimacingFilled = createIconComponent('emoji-grimacing', 'filled');\nexport const EmojiLaughFilled = createIconComponent('emoji-laugh', 'filled');\nexport const EmojiMehFilled = createIconComponent('emoji-meh', 'filled');\nexport const EmojiSadFilled = createIconComponent('emoji-sad', 'filled');\nexport const EmojiSurpriseFilled = createIconComponent('emoji-surprise', 'filled');\nexport const EngineFilled = createIconComponent('engine', 'filled');\nexport const EqualFilled = createIconComponent('equal', 'filled');\nexport const EqualCircleFilled = createIconComponent('equal-circle', 'filled');\nexport const EqualOffFilled = createIconComponent('equal-off', 'filled');\nexport const ErrorCircleFilled = createIconComponent('error-circle', 'filled');\nexport const EyeFilled = createIconComponent('eye', 'filled');\nexport const EyeOffFilled = createIconComponent('eye-off', 'filled');\nexport const EyedropperFilled = createIconComponent('eyedropper', 'filled');\nexport const EyedropperOffFilled = createIconComponent('eyedropper-off', 'filled');\nexport const FastForwardFilled = createIconComponent('fast-forward', 'filled');\nexport const FilmstripFilled = createIconComponent('filmstrip', 'filled');\nexport const FilmstripOffFilled = createIconComponent('filmstrip-off', 'filled');\nexport const FilterFilled = createIconComponent('filter', 'filled');\nexport const FireFilled = createIconComponent('fire', 'filled');\nexport const FlagFilled = createIconComponent('flag', 'filled');\nexport const FlagOffFilled = createIconComponent('flag-off', 'filled');\nexport const FlashFilled = createIconComponent('flash', 'filled');\nexport const FlashOffFilled = createIconComponent('flash-off', 'filled');\nexport const FlashlightFilled = createIconComponent('flashlight', 'filled');\nexport const FlashlightOffFilled = createIconComponent('flashlight-off', 'filled');\nexport const FlipHorizontalFilled = createIconComponent('flip-horizontal', 'filled');\nexport const FlipVerticialFilled = createIconComponent('flip-verticial', 'filled');\nexport const FolderFilled = createIconComponent('folder', 'filled');\nexport const FolderOpenFilled = createIconComponent('folder-open', 'filled');\nexport const FrameFilled = createIconComponent('frame', 'filled');\nexport const FullScreenMaximizeFilled = createIconComponent('full-screen-maximize', 'filled');\nexport const FullScreenMinimizeFilled = createIconComponent('full-screen-minimize', 'filled');\nexport const GamesFilled = createIconComponent('games', 'filled');\nexport const GanttChartFilled = createIconComponent('gantt-chart', 'filled');\nexport const GasFilled = createIconComponent('gas', 'filled');\nexport const GasStationFilled = createIconComponent('gas-station', 'filled');\nexport const GavelFilled = createIconComponent('gavel', 'filled');\nexport const GifFilled = createIconComponent('gif', 'filled');\nexport const GiftFilled = createIconComponent('gift', 'filled');\nexport const GiftCardFilled = createIconComponent('gift-card', 'filled');\nexport const GitFilled = createIconComponent('git', 'filled');\nexport const GlassesFilled = createIconComponent('glasses', 'filled');\nexport const GlobalFilled = createIconComponent('global', 'filled');\nexport const GridFilled = createIconComponent('grid', 'filled');\nexport const GuestFilled = createIconComponent('guest', 'filled');\nexport const GuitarFilled = createIconComponent('guitar', 'filled');\nexport const HammerFilled = createIconComponent('hammer', 'filled');\nexport const HardDriveFilled = createIconComponent('hard-drive', 'filled');\nexport const HatGraduationFilled = createIconComponent('hat-graduation', 'filled');\nexport const HdFilled = createIconComponent('hd', 'filled');\nexport const HdrFilled = createIconComponent('hdr', 'filled');\nexport const HdrOffFilled = createIconComponent('hdr-off', 'filled');\nexport const HeadphonesFilled = createIconComponent('headphones', 'filled');\nexport const HeadphonesMicFilled = createIconComponent('headphones-mic', 'filled');\nexport const HeadsetVrFilled = createIconComponent('headset-vr', 'filled');\nexport const HeartFilled = createIconComponent('heart', 'filled');\nexport const HeartBrokenFilled = createIconComponent('heart-broken', 'filled');\nexport const HexagonFilled = createIconComponent('hexagon', 'filled');\nexport const HighlightFilled = createIconComponent('highlight', 'filled');\nexport const HighwayFilled = createIconComponent('highway', 'filled');\nexport const HomeFilled = createIconComponent('home', 'filled');\nexport const HomeCheckmarkFilled = createIconComponent('home-checkmark', 'filled');\nexport const HourglassFilled = createIconComponent('hourglass', 'filled');\nexport const HourglassHalfFilled = createIconComponent('hourglass-half', 'filled');\nexport const HourglassOneQuarterFilled = createIconComponent('hourglass-one-quarter', 'filled');\nexport const HourglassThreeQuarterFilled = createIconComponent('hourglass-three-quarter', 'filled');\nexport const HtmlFilled = createIconComponent('html', 'filled');\nexport const ImageFilled = createIconComponent('image', 'filled');\nexport const ImageCircleFilled = createIconComponent('image-circle', 'filled');\nexport const ImportantFilled = createIconComponent('important', 'filled');\nexport const IncognitoFilled = createIconComponent('incognito', 'filled');\nexport const InfoFilled = createIconComponent('info', 'filled');\nexport const IosFilled = createIconComponent('ios', 'filled');\nexport const IosArrowLtrFilled = createIconComponent('ios-arrow-ltr', 'filled');\nexport const IosArrowRtlFilled = createIconComponent('ios-arrow-rtl', 'filled');\nexport const IosChevronLtrFilled = createIconComponent('ios-chevron-ltr', 'filled');\nexport const IosChevronRtlFilled = createIconComponent('ios-chevron-rtl', 'filled');\nexport const IotFilled = createIconComponent('iot', 'filled');\nexport const JavascriptFilled = createIconComponent('javascript', 'filled');\nexport const JoystickFilled = createIconComponent('joystick', 'filled');\nexport const JsonFilled = createIconComponent('json', 'filled');\nexport const JsonFileFilled = createIconComponent('json-file', 'filled');\nexport const KeyFilled = createIconComponent('key', 'filled');\nexport const KeyMultipleFilled = createIconComponent('key-multiple', 'filled');\nexport const KeyboardFilled = createIconComponent('keyboard', 'filled');\nexport const KeyboardBackspaceFilled = createIconComponent('keyboard-backspace', 'filled');\nexport const KeyboardCommandFilled = createIconComponent('keyboard-command', 'filled');\nexport const KeyboardLockFilled = createIconComponent('keyboard-lock', 'filled');\nexport const KeyboardOffFilled = createIconComponent('keyboard-off', 'filled');\nexport const KeyboardOptionFilled = createIconComponent('keyboard-option', 'filled');\nexport const KeyboardReturnFilled = createIconComponent('keyboard-return', 'filled');\nexport const KeyboardShiftFilled = createIconComponent('keyboard-shift', 'filled');\nexport const KeyboardShiftUppercaseFilled = createIconComponent('keyboard-shift-uppercase', 'filled');\nexport const KeyboardTabFilled = createIconComponent('keyboard-tab', 'filled');\nexport const KioskFilled = createIconComponent('kiosk', 'filled');\nexport const KotlinFilled = createIconComponent('kotlin', 'filled');\nexport const LaptopFilled = createIconComponent('laptop', 'filled');\nexport const LayerFilled = createIconComponent('layer', 'filled');\nexport const LightbulbFilled = createIconComponent('lightbulb', 'filled');\nexport const LineFilled = createIconComponent('line', 'filled');\nexport const LineDashesFilled = createIconComponent('line-dashes', 'filled');\nexport const LineHorizontal1Filled = createIconComponent('line-horizontal-1', 'filled');\nexport const LineHorizontal1DashesFilled = createIconComponent('line-horizontal-1-dashes', 'filled');\nexport const LinkFilled = createIconComponent('link', 'filled');\nexport const LocalLanguageFilled = createIconComponent('local-language', 'filled');\nexport const LocationFilled = createIconComponent('location', 'filled');\nexport const LocationArrowFilled = createIconComponent('location-arrow', 'filled');\nexport const LockClosedFilled = createIconComponent('lock-closed', 'filled');\nexport const LockOpenFilled = createIconComponent('lock-open', 'filled');\nexport const LuggageFilled = createIconComponent('luggage', 'filled');\nexport const MacosFilled = createIconComponent('macos', 'filled');\nexport const MailFilled = createIconComponent('mail', 'filled');\nexport const MailReadFilled = createIconComponent('mail-read', 'filled');\nexport const MailboxFilled = createIconComponent('mailbox', 'filled');\nexport const MapFilled = createIconComponent('map', 'filled');\nexport const MarkdownFilled = createIconComponent('markdown', 'filled');\nexport const MathSymbolsFilled = createIconComponent('math-symbols', 'filled');\nexport const MegaphoneFilled = createIconComponent('megaphone', 'filled');\nexport const MicFilled = createIconComponent('mic', 'filled');\nexport const MoonFilled = createIconComponent('moon', 'filled');\nexport const MoreCircleFilled = createIconComponent('more-circle', 'filled');\nexport const MoreHorizontalFilled = createIconComponent('more-horizontal', 'filled');\nexport const MoreVerticialFilled = createIconComponent('more-verticial', 'filled');\nexport const MouseFilled = createIconComponent('mouse', 'filled');\nexport const MovieFilled = createIconComponent('movie', 'filled');\nexport const NetworkCheckFilled = createIconComponent('network-check', 'filled');\nexport const NewsFilled = createIconComponent('news', 'filled');\nexport const NextFilled = createIconComponent('next', 'filled');\nexport const NoteFilled = createIconComponent('note', 'filled');\nexport const NotebookFilled = createIconComponent('notebook', 'filled');\nexport const NotepadFilled = createIconComponent('notepad', 'filled');\nexport const NumberCircle0Filled = createIconComponent('number-circle-0', 'filled');\nexport const NumberCircle1Filled = createIconComponent('number-circle-1', 'filled');\nexport const NumberCircle2Filled = createIconComponent('number-circle-2', 'filled');\nexport const NumberCircle3Filled = createIconComponent('number-circle-3', 'filled');\nexport const NumberCircle4Filled = createIconComponent('number-circle-4', 'filled');\nexport const NumberCircle5Filled = createIconComponent('number-circle-5', 'filled');\nexport const NumberCircle6Filled = createIconComponent('number-circle-6', 'filled');\nexport const NumberCircle7Filled = createIconComponent('number-circle-7', 'filled');\nexport const NumberCircle8Filled = createIconComponent('number-circle-8', 'filled');\nexport const NumberCircle9Filled = createIconComponent('number-circle-9', 'filled');\nexport const NumberSymbolFilled = createIconComponent('number-symbol', 'filled');\nexport const NumberSymbolCircleFilled = createIconComponent('number-symbol-circle', 'filled');\nexport const NumberSymbolSquareFilled = createIconComponent('number-symbol-square', 'filled');\nexport const OpacityFilled = createIconComponent('opacity', 'filled');\nexport const OpenFilled = createIconComponent('open', 'filled');\nexport const OpenOffFilled = createIconComponent('open-off', 'filled');\nexport const OptionsFilled = createIconComponent('options', 'filled');\nexport const OrganizationFilled = createIconComponent('organization', 'filled');\nexport const OrganizationHorizontalFilled = createIconComponent('organization-horizontal', 'filled');\nexport const OrientationFilled = createIconComponent('orientation', 'filled');\nexport const OvalFilled = createIconComponent('oval', 'filled');\nexport const OvenFilled = createIconComponent('oven', 'filled');\nexport const PaddingFilled = createIconComponent('padding', 'filled');\nexport const PageFitFilled = createIconComponent('page-fit', 'filled');\nexport const PaintBrushFilled = createIconComponent('paint-brush', 'filled');\nexport const PaintBucketFilled = createIconComponent('paint-bucket', 'filled');\nexport const ParallelogramFilled = createIconComponent('parallelogram', 'filled');\nexport const PasswordFilled = createIconComponent('password', 'filled');\nexport const PauseFilled = createIconComponent('pause', 'filled');\nexport const PauseCircleFilled = createIconComponent('pause-circle', 'filled');\nexport const PaymentFilled = createIconComponent('payment', 'filled');\nexport const PaymentWirelessFilled = createIconComponent('payment-wireless', 'filled');\nexport const PenFilled = createIconComponent('pen', 'filled');\nexport const PenOffFilled = createIconComponent('pen-off', 'filled');\nexport const PentagonFilled = createIconComponent('pentagon', 'filled');\nexport const PersonFilled = createIconComponent('person', 'filled');\nexport const PersonVoiceFilled = createIconComponent('person-voice', 'filled');\nexport const PhoneFilled = createIconComponent('phone', 'filled');\nexport const PianoFilled = createIconComponent('piano', 'filled');\nexport const PinFilled = createIconComponent('pin', 'filled');\nexport const PipelineFilled = createIconComponent('pipeline', 'filled');\nexport const PlayFilled = createIconComponent('play', 'filled');\nexport const PlayCircleFilled = createIconComponent('play-circle', 'filled');\nexport const PlaystoreFilled = createIconComponent('playstore', 'filled');\nexport const PortHdmiFilled = createIconComponent('port-hdmi', 'filled');\nexport const PortMicroUsbFilled = createIconComponent('port-micro-usb', 'filled');\nexport const PortUsbAFilled = createIconComponent('port-usb-a', 'filled');\nexport const PortUsbCFilled = createIconComponent('port-usb-c', 'filled');\nexport const PowerFilled = createIconComponent('power', 'filled');\nexport const PreviewLinkFilled = createIconComponent('preview-link', 'filled');\nexport const PreviousFilled = createIconComponent('previous', 'filled');\nexport const PrintFilled = createIconComponent('print', 'filled');\nexport const PulseFilled = createIconComponent('pulse', 'filled');\nexport const PulseCircleFilled = createIconComponent('pulse-circle', 'filled');\nexport const PulseSquareFilled = createIconComponent('pulse-square', 'filled');\nexport const PythonFilled = createIconComponent('python', 'filled');\nexport const QrCodeFilled = createIconComponent('qr-code', 'filled');\nexport const QuestionFilled = createIconComponent('question', 'filled');\nexport const QuestionCircleFilled = createIconComponent('question-circle', 'filled');\nexport const RadioButtonFilled = createIconComponent('radio-button', 'filled');\nexport const RamFilled = createIconComponent('ram', 'filled');\nexport const RecordFilled = createIconComponent('record', 'filled');\nexport const RecordStopFilled = createIconComponent('record-stop', 'filled');\nexport const RectangleFilled = createIconComponent('rectangle', 'filled');\nexport const RefineuiFilled = createIconComponent('refineui', 'filled');\nexport const RewindFilled = createIconComponent('rewind', 'filled');\nexport const RhombusFilled = createIconComponent('rhombus', 'filled');\nexport const RibbonFilled = createIconComponent('ribbon', 'filled');\nexport const RoadFilled = createIconComponent('road', 'filled');\nexport const RoadConeFilled = createIconComponent('road-cone', 'filled');\nexport const RocketFilled = createIconComponent('rocket', 'filled');\nexport const RotationFilled = createIconComponent('rotation', 'filled');\nexport const RouterFilled = createIconComponent('router', 'filled');\nexport const RssFilled = createIconComponent('rss', 'filled');\nexport const RulerFilled = createIconComponent('ruler', 'filled');\nexport const RunFilled = createIconComponent('run', 'filled');\nexport const SaveFilled = createIconComponent('save', 'filled');\nexport const ScalesFilled = createIconComponent('scales', 'filled');\nexport const ScriptFilled = createIconComponent('script', 'filled');\nexport const SearchFilled = createIconComponent('search', 'filled');\nexport const SendFilled = createIconComponent('send', 'filled');\nexport const SerialPortFilled = createIconComponent('serial-port', 'filled');\nexport const ServerFilled = createIconComponent('server', 'filled');\nexport const ServerLinkFilled = createIconComponent('server-link', 'filled');\nexport const ServerPlayFilled = createIconComponent('server-play', 'filled');\nexport const ServiceBellFilled = createIconComponent('service-bell', 'filled');\nexport const SettingsFilled = createIconComponent('settings', 'filled');\nexport const ShapeExcludeFilled = createIconComponent('shape-exclude', 'filled');\nexport const ShapeIntersectFilled = createIconComponent('shape-intersect', 'filled');\nexport const ShapeSubtractFilled = createIconComponent('shape-subtract', 'filled');\nexport const ShapeUnionFilled = createIconComponent('shape-union', 'filled');\nexport const ShapesFilled = createIconComponent('shapes', 'filled');\nexport const ShareFilled = createIconComponent('share', 'filled');\nexport const ShareAndroidFilled = createIconComponent('share-android', 'filled');\nexport const ShareIosFilled = createIconComponent('share-ios', 'filled');\nexport const ShellScriptFilled = createIconComponent('shell-script', 'filled');\nexport const ShieldFilled = createIconComponent('shield', 'filled');\nexport const ShoppingBagFilled = createIconComponent('shopping-bag', 'filled');\nexport const SimFilled = createIconComponent('sim', 'filled');\nexport const SlideAddFilled = createIconComponent('slide-add', 'filled');\nexport const SlideContentFilled = createIconComponent('slide-content', 'filled');\nexport const SlideEraserFilled = createIconComponent('slide-eraser', 'filled');\nexport const SlideGridFilled = createIconComponent('slide-grid', 'filled');\nexport const SlideHideFilled = createIconComponent('slide-hide', 'filled');\nexport const SlideLayoutFilled = createIconComponent('slide-layout', 'filled');\nexport const SmartwatchFilled = createIconComponent('smartwatch', 'filled');\nexport const SoundSourceFilled = createIconComponent('sound-source', 'filled');\nexport const SpacebarFilled = createIconComponent('spacebar', 'filled');\nexport const SportBaseballFilled = createIconComponent('sport-baseball', 'filled');\nexport const SportBasketballFilled = createIconComponent('sport-basketball', 'filled');\nexport const SportSoccerFilled = createIconComponent('sport-soccer', 'filled');\nexport const SprayCanFilled = createIconComponent('spray-can', 'filled');\nexport const SquareFilled = createIconComponent('square', 'filled');\nexport const SquareHintFilled = createIconComponent('square-hint', 'filled');\nexport const SquareMultipleFilled = createIconComponent('square-multiple', 'filled');\nexport const StarFilled = createIconComponent('star', 'filled');\nexport const StopFilled = createIconComponent('stop', 'filled');\nexport const SubtractFilled = createIconComponent('subtract', 'filled');\nexport const SwiftFilled = createIconComponent('swift', 'filled');\nexport const TabFilled = createIconComponent('tab', 'filled');\nexport const TabletFilled = createIconComponent('tablet', 'filled');\nexport const TagFilled = createIconComponent('tag', 'filled');\nexport const TargetFilled = createIconComponent('target', 'filled');\nexport const TemperatureFilled = createIconComponent('temperature', 'filled');\nexport const TentFilled = createIconComponent('tent', 'filled');\nexport const TextFilled = createIconComponent('text', 'filled');\nexport const TextAlignCenterFilled = createIconComponent('text-align-center', 'filled');\nexport const TextAlignJustifyFilled = createIconComponent('text-align-justify', 'filled');\nexport const TextAlignLeftFilled = createIconComponent('text-align-left', 'filled');\nexport const TextAlignRightFilled = createIconComponent('text-align-right', 'filled');\nexport const TextboxFilled = createIconComponent('textbox', 'filled');\nexport const TextboxAlignBottomFilled = createIconComponent('textbox-align-bottom', 'filled');\nexport const TextboxAlignBottomCenterFilled = createIconComponent('textbox-align-bottom-center', 'filled');\nexport const TextboxAlignBottomLeftFilled = createIconComponent('textbox-align-bottom-left', 'filled');\nexport const TextboxAlignBottomRightFilled = createIconComponent('textbox-align-bottom-right', 'filled');\nexport const TextboxAlignCenterFilled = createIconComponent('textbox-align-center', 'filled');\nexport const TextboxAlignMiddleFilled = createIconComponent('textbox-align-middle', 'filled');\nexport const TextboxAlignMiddleLeftFilled = createIconComponent('textbox-align-middle-left', 'filled');\nexport const TextboxAlignMiddleRightFilled = createIconComponent('textbox-align-middle-right', 'filled');\nexport const TextboxAlignTopFilled = createIconComponent('textbox-align-top', 'filled');\nexport const TextboxAlignTopCenterFilled = createIconComponent('textbox-align-top-center', 'filled');\nexport const TextboxAlignTopLeftFilled = createIconComponent('textbox-align-top-left', 'filled');\nexport const TextboxAlignTopRightFilled = createIconComponent('textbox-align-top-right', 'filled');\nexport const ThinkingFilled = createIconComponent('thinking', 'filled');\nexport const TicketFilled = createIconComponent('ticket', 'filled');\nexport const TimerFilled = createIconComponent('timer', 'filled');\nexport const ToggleLeftFilled = createIconComponent('toggle-left', 'filled');\nexport const ToggleMultipleFilled = createIconComponent('toggle-multiple', 'filled');\nexport const ToggleRightFilled = createIconComponent('toggle-right', 'filled');\nexport const ToolboxFilled = createIconComponent('toolbox', 'filled');\nexport const TrophyFilled = createIconComponent('trophy', 'filled');\nexport const TvFilled = createIconComponent('tv', 'filled');\nexport const TypescriptFilled = createIconComponent('typescript', 'filled');\nexport const UmbrellaFilled = createIconComponent('umbrella', 'filled');\nexport const UsbFilled = createIconComponent('usb', 'filled');\nexport const UsbCableFilled = createIconComponent('usb-cable', 'filled');\nexport const VerifiedFilled = createIconComponent('verified', 'filled');\nexport const VideoFilled = createIconComponent('video', 'filled');\nexport const VideoClipFilled = createIconComponent('video-clip', 'filled');\nexport const VideoPlayPauseFilled = createIconComponent('video-play-pause', 'filled');\nexport const VoicemailFilled = createIconComponent('voicemail', 'filled');\nexport const VoteFilled = createIconComponent('vote', 'filled');\nexport const WalkieTalkieFilled = createIconComponent('walkie-talkie', 'filled');\nexport const WalletFilled = createIconComponent('wallet', 'filled');\nexport const WandFilled = createIconComponent('wand', 'filled');\nexport const WarningFilled = createIconComponent('warning', 'filled');\nexport const WasherFilled = createIconComponent('washer', 'filled');\nexport const WaterFilled = createIconComponent('water', 'filled');\nexport const WeatherBlowingSnowFilled = createIconComponent('weather-blowing-snow', 'filled');\nexport const WeatherCloudyFilled = createIconComponent('weather-cloudy', 'filled');\nexport const WeatherRainFilled = createIconComponent('weather-rain', 'filled');\nexport const WeatherSnowFilled = createIconComponent('weather-snow', 'filled');\nexport const WeatherSnowflakeFilled = createIconComponent('weather-snowflake', 'filled');\nexport const WeatherSunnyFilled = createIconComponent('weather-sunny', 'filled');\nexport const WeatherThunderstormFilled = createIconComponent('weather-thunderstorm', 'filled');\nexport const WebFilled = createIconComponent('web', 'filled');\nexport const Wifi1Filled = createIconComponent('wifi-1', 'filled');\nexport const Wifi2Filled = createIconComponent('wifi-2', 'filled');\nexport const Wifi3Filled = createIconComponent('wifi-3', 'filled');\nexport const Wifi4Filled = createIconComponent('wifi-4', 'filled');\nexport const WindowsFilled = createIconComponent('windows', 'filled');\nexport const WrenchFilled = createIconComponent('wrench', 'filled');\nexport const XrayFilled = createIconComponent('xray', 'filled');\nexport const ZoomFilled = createIconComponent('zoom', 'filled');\nexport const ZoomInFilled = createIconComponent('zoom-in', 'filled');\nexport const ZoomOutFilled = createIconComponent('zoom-out', 'filled');"],"names":["React","IconUtils","Text"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}