// CodeMirror, copyright (c) by Marijn Haverbeke and others
// Distributed under an MIT license: https://codemirror.net/LICENSE
(function() {
var mode = CodeMirror.getMode({indentUnit: 2}, "swift");
function MT(name) { test.mode(name, mode, Array.prototype.slice.call(arguments, 1)); }
// Ensure all number types are properly represented.
MT("numbers",
"[keyword var] [def a] [operator =] [number 17]",
"[keyword var] [def b] [operator =] [number -0.5]",
"[keyword var] [def c] [operator =] [number 0.3456e-4]",
"[keyword var] [def d] [operator =] [number 345e2]",
"[keyword var] [def e] [operator =] [number 0o7324]",
"[keyword var] [def f] [operator =] [number 0b10010]",
"[keyword var] [def g] [operator =] [number -0x35ade]",
"[keyword var] [def h] [operator =] [number 0xaea.ep-13]",
"[keyword var] [def i] [operator =] [number 0x13ep6]");
// Variable/class/etc definition.
MT("definition",
"[keyword var] [def a] [operator =] [number 5]",
"[keyword let] [def b][punctuation :] [variable-2 Int] [operator =] [number 10]",
"[keyword class] [def C] [punctuation {] [punctuation }]",
"[keyword struct] [def D] [punctuation {] [punctuation }]",
"[keyword enum] [def E] [punctuation {] [punctuation }]",
"[keyword extension] [def F] [punctuation {] [punctuation }]",
"[keyword protocol] [def G] [punctuation {] [punctuation }]",
"[keyword func] [def h][punctuation ()] [punctuation {] [punctuation }]",
"[keyword import] [def Foundation]",
"[keyword typealias] [def NewString] [operator =] [variable-2 String]",
"[keyword associatedtype] [def I]",
"[keyword for] [def j] [keyword in] [number 0][punctuation ..][operator <][number 3] [punctuation {] [punctuation }]");
// Strings and string interpolation.
MT("strings",
"[keyword var] [def a][punctuation :] [variable-2 String] [operator =] [string \"test\"]",
"[keyword var] [def b][punctuation :] [variable-2 String] [operator =] [string \"\\(][variable a][string )\"]",
"[keyword var] [def c] [operator =] [string \"\"\"]",
"[string multi]",
"[string line]",
"[string \"test\"]",
"[string \"\"\"]",
"[variable print][punctuation (][string \"\"][punctuation )]");
// Comments.
MT("comments",
"[comment // This is a comment]",
"[comment /* This is another comment */]",
"[keyword var] [def a] [operator =] [number 5] [comment // Third comment]");
// Atoms.
MT("atoms",
"[keyword class] [def FooClass] [punctuation {]",
" [keyword let] [def fooBool][punctuation :] [variable-2 Bool][operator ?]",
" [keyword let] [def fooInt][punctuation :] [variable-2 Int][operator ?]",
" [keyword func] [keyword init][punctuation (][variable fooBool][punctuation :] [variable-2 Bool][punctuation ,] [variable barBool][punctuation :] [variable-2 Bool][punctuation )] [punctuation {]",
" [atom super][property .init][punctuation ()]",
" [atom self][property .fooBool] [operator =] [variable fooBool]",
" [variable fooInt] [operator =] [atom nil]",
" [keyword if] [variable barBool] [operator ==] [atom true] [punctuation {]",
" [variable print][punctuation (][string \"True!\"][punctuation )]",
" [punctuation }] [keyword else] [keyword if] [variable barBool] [operator ==] [atom false] [punctuation {]",
" [keyword for] [atom _] [keyword in] [number 0][punctuation ...][number 5] [punctuation {]",
" [variable print][punctuation (][string \"False!\"][punctuation )]",
" [punctuation }]",
" [punctuation }]",
" [punctuation }]",
"[punctuation }]");
// Types.
MT("types",
"[keyword var] [def a] [operator =] [variable-2 Array][operator <][variable-2 Int][operator >]",
"[keyword var] [def b] [operator =] [variable-2 Set][operator <][variable-2 Bool][operator >]",
"[keyword var] [def c] [operator =] [variable-2 Dictionary][operator <][variable-2 String][punctuation ,][variable-2 Character][operator >]",
"[keyword var] [def d][punctuation :] [variable-2 Int64][operator ?] [operator =] [variable-2 Optional][punctuation (][number 8][punctuation )]",
"[keyword func] [def e][punctuation ()] [operator ->] [variable-2 Void] [punctuation {]",
" [keyword var] [def e1][punctuation :] [variable-2 Float] [operator =] [number 1.2]",
"[punctuation }]",
"[keyword func] [def f][punctuation ()] [operator ->] [variable-2 Never] [punctuation {]",
" [keyword var] [def f1][punctuation :] [variable-2 Double] [operator =] [number 2.4]",
"[punctuation }]");
// Operators.
MT("operators",
"[keyword var] [def a] [operator =] [number 1] [operator +] [number 2]",
"[keyword var] [def b] [operator =] [number 1] [operator -] [number 2]",
"[keyword var] [def c] [operator =] [number 1] [operator *] [number 2]",
"[keyword var] [def d] [operator =] [number 1] [operator /] [number 2]",
"[keyword var] [def e] [operator =] [number 1] [operator %] [number 2]",
"[keyword var] [def f] [operator =] [number 1] [operator |] [number 2]",
"[keyword var] [def g] [operator =] [number 1] [operator &] [number 2]",
"[keyword var] [def h] [operator =] [number 1] [operator <<] [number 2]",
"[keyword var] [def i] [operator =] [number 1] [operator >>] [number 2]",
"[keyword var] [def j] [operator =] [number 1] [operator ^] [number 2]",
"[keyword var] [def k] [operator =] [operator ~][number 1]",
"[keyword var] [def l] [operator =] [variable foo] [operator ?] [number 1] [punctuation :] [number 2]",
"[keyword var] [def m][punctuation :] [variable-2 Int] [operator =] [variable-2 Optional][punctuation (][number 8][punctuation )][operator !]");
// Punctuation.
MT("punctuation",
"[keyword let] [def a] [operator =] [number 1][punctuation ;] [keyword let] [def b] [operator =] [number 2]",
"[keyword let] [def testArr][punctuation :] [punctuation [[][variable-2 Int][punctuation ]]] [operator =] [punctuation [[][variable a][punctuation ,] [variable b][punctuation ]]]",
"[keyword for] [def i] [keyword in] [number 0][punctuation ..][operator <][variable testArr][property .count] [punctuation {]",
" [variable print][punctuation (][variable testArr][punctuation [[][variable i][punctuation ]])]",
"[punctuation }]");
// Identifiers.
MT("identifiers",
"[keyword let] [def abc] [operator =] [number 1]",
"[keyword let] [def ABC] [operator =] [number 2]",
"[keyword let] [def _123] [operator =] [number 3]",
"[keyword let] [def _$1$2$3] [operator =] [number 4]",
"[keyword let] [def A1$_c32_$_] [operator =] [number 5]",
"[keyword let] [def `var`] [operator =] [punctuation [[][number 1][punctuation ,] [number 2][punctuation ,] [number 3][punctuation ]]]",
"[keyword let] [def square$] [operator =] [variable `var`][property .map] [punctuation {][variable $0] [operator *] [variable $0][punctuation }]",
"$$ [number 1][variable a] $[atom _] [variable _$] [variable __] `[variable a] [variable b]`");
// Properties.
MT("properties",
"[variable print][punctuation (][variable foo][property .abc][punctuation )]",
"[variable print][punctuation (][variable foo][property .ABC][punctuation )]",
"[variable print][punctuation (][variable foo][property ._123][punctuation )]",
"[variable print][punctuation (][variable foo][property ._$1$2$3][punctuation )]",
"[variable print][punctuation (][variable foo][property .A1$_c32_$_][punctuation )]",
"[variable print][punctuation (][variable foo][property .`var`][punctuation )]",
"[variable print][punctuation (][variable foo][property .__][punctuation )]");
// Instructions or other things that start with #.
MT("instructions",
"[keyword if] [builtin #available][punctuation (][variable iOS] [number 9][punctuation ,] [operator *][punctuation )] [punctuation {}]",
"[variable print][punctuation (][builtin #file][punctuation ,] [builtin #function][punctuation )]",
"[variable print][punctuation (][builtin #line][punctuation ,] [builtin #column][punctuation )]",
"[builtin #if] [atom true]",
"[keyword import] [def A]",
"[builtin #elseif] [atom false]",
"[keyword import] [def B]",
"[builtin #endif]",
"[builtin #sourceLocation][punctuation (][variable file][punctuation :] [string \"file.swift\"][punctuation ,] [variable line][punctuation :] [number 2][punctuation )]");
// Attributes; things that start with @.
MT("attributes",
"[attribute @objc][punctuation (][variable objcFoo][punctuation :)]",
"[attribute @available][punctuation (][variable iOS][punctuation )]");
// Property/number edge case.
MT("property_number",
"[variable print][punctuation (][variable foo][property ._123][punctuation )]",
"[variable print][punctuation (]")
MT("nested_comments",
"[comment /*]",
"[comment But wait /* this is a nested comment */ for real]",
"[comment /**** let * me * show * you ****/]",
"[comment ///// let / me / show / you /////]",
"[comment */]");
// TODO: correctly identify when multiple variables are being declared
// by use of a comma-separated list.
// TODO: correctly identify when variables are being declared in a tuple.
// TODO: identify protocols as types when used before an extension?
})();
html{background:none !important;min-height:100% !important;min-width:0 !important;height:auto !important;overflow-x:hidden}html.tve-html-editor{overflow-x:visible !important}.backstretch{display:none}#tcb_landing_page .float-left{float:left}#tcb_landing_page .float-right{float:right}.aligncenter{display:block;margin:10px auto}body{line-height:normal !important;letter-spacing:normal;height:auto !important;margin:0;overflow-x:hidden !important}body *{outline:none}body:before{display:none !important}body .scvps{margin:0 auto}body .tve_post_lp{min-width:285px}body .tve_post_lp .pddbg.in{max-width:100vw !important}body .tve_post_lp .scvps{max-width:100vw}body .wrp{width:auto}body .tve_wrap_all{background-size:cover;padding:0 0 10px 0}body h1,body h2,body h3,body h4,body h5,body h6{line-height:1em;letter-spacing:normal}body p{letter-spacing:normal;line-height:1.5em;margin-bottom:20px}body .wp-caption{border:0;background:none}body .wp-caption img{margin-bottom:0}body div .wp-caption{border:0}body .darkSec h1,body .darkSec h2,body .darkSec h3,body .darkSec h4,body .darkSec h5,body .darkSec h6,body .darkSec a,body .darkSec ul,body .darkSec ol,body .darkSec p{color:#333}body .darkSec p span{color:inherit}body .lightSec h1,body .lightSec h2,body .lightSec h3,body .lightSec h4,body .lightSec h5,body .lightSec h6,body .lightSec a,body .lightSec ul,body .lightSec ol,body .lightSec p{color:#fff}body .lightSec p span{color:inherit}.darkSec font span,.darkSec font a,.lightSec font span,.lightSec font a{color:inherit}.tve_lp_content:after,.tve_lp_header:after,.tve_lp_footer:after{content:"";display:block;clear:both;visibility:hidden;line-height:0;height:0}#tcb_landing_page .tve_shortcode_rendered .top,#tcb_landing_page .tve_shortcode_rendered .bottom{margin:0}.pddbg{background-size:cover;background-repeat:no-repeat}@media screen and (device-width: 768px) and (device-height: 1024px){.pdwbg,body.tve-lp-fixed{background-attachment:scroll !important;background-size:auto auto !important;background-position:center top !important}}@media screen and (device-width: 320px) and (device-height: 480px) and (-webkit-device-pixel-ratio: 2){.pdwbg,body.tve-lp-fixed{background-attachment:scroll !important;background-size:auto auto !important;background-position:center top !important}}@media screen and (device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2){.pdwbg,body.tve-lp-fixed{background-attachment:scroll !important;background-size:auto auto !important;background-position:center top !important}}@media screen and (device-width: 375px) and (device-height: 667px) and (-webkit-device-pixel-ratio: 2){.pdwbg,body.tve-lp-fixed{background-attachment:scroll !important;background-size:auto auto !important;background-position:center top !important}}iframe{max-width:100%}@media only screen and (min-device-width: 1024px) and (max-device-width: 1024px) and (min-device-height: 1366px) and (max-device-height: 1366px) and (min-width: 1366px) and (max-width: 1366px){body .tve_post_lp .pddbg.in{min-width:100vw}}.tve_p_lb_background{font-family:'Roboto'}@font-face{font-family:'rockstar_autoresponder';src:url("fonts/rockstar_autoresponder/rockstar_autoresponder.eot?nkhhqg");src:url("fonts/rockstar_autoresponder/rockstar_autoresponder.eot?#iefixnkhhqg") format("embedded-opentype"),url("fonts/rockstar_autoresponder/rockstar_autoresponder.woff?nkhhqg") format("woff"),url("fonts/rockstar_autoresponder/rockstar_autoresponder.ttf?nkhhqg") format("truetype"),url("fonts/rockstar_autoresponder/rockstar_autoresponder.svg?nkhhqg#icomoon") format("svg");font-weight:normal;font-style:normal}.tve_lg_dropdown{display:inline-block;position:relative;width:100%}.tve_lg_dropdown select{color:#fff !important;background-color:#202020;font-family:'Roboto';font-weight:300;font-size:26px !important;border:none !important;display:inline-block;margin:0;height:50px;border-radius:5px !important;appearance:none}.tve_lg_dropdown select.tve-lg-error{border-color:transparent !important;box-shadow:0 0 4px #a94442 inset !important}.tve_lg_dropdown:after{top:1px;right:1px;color:#fff;content:"\e602";background-color:#202020;font-size:22px;text-align:center;height:48px;width:50px;line-height:48px;pointer-events:none;position:absolute;font-family:'rockstar_autoresponder';border-radius:5px}.tve_lg_radio_wrapper{position:relative;padding:5px 20px 5px 0 !important;display:inline-block;width:auto !important}.tve_lg_radio_wrapper input[type="radio"]{left:0;margin:0;padding:0;position:absolute;top:0;z-index:5;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";-moz-opacity:0;opacity:0;width:100%;height:100%;cursor:pointer}.tve_lg_radio_wrapper input[type="radio"]+label{position:relative;display:inline-block;font-size:22px !important;color:#fff;font-family:'Roboto';font-weight:300}.tve_lg_radio_wrapper input[type="radio"]+label:before{width:22px;height:22px;margin-right:10px;content:"";background-color:#202020;border:1px solid #0d0504;display:inline-block;vertical-align:middle;border-radius:100%}.tve_lg_radio_wrapper input[type="radio"]+label:after{width:16px;height:16px;background-color:transparent;position:absolute;top:7px;left:4px;content:"";border-radius:100%;transition:background-color 0.3s}.tve_lg_radio_wrapper input[type="radio"]:checked+label:before{width:22px;height:22px;border:1px solid #0d0504;position:relative;display:inline-block;content:"";border-radius:100%}.tve_lg_radio_wrapper input[type="radio"]:checked+label:after{background-color:#fff}.tve_lg_radio_wrapper input[type="radio"].tve-lg-error+label:before{background-color:#dda8a7;border:1px solid #a94442;box-shadow:inset 0px 2px 2px 0px #111}.thrv_lead_generation.tve_black input[type="radio"]:checked+label:after{background-color:#181818}.thrv_lead_generation.tve_blue input[type="radio"]:checked+label:after{background-color:#305584}.thrv_lead_generation.tve_green input[type="radio"]:checked+label:after{background-color:#7c9735}.thrv_lead_generation.tve_orange input[type="radio"]:checked+label:after{background-color:#d2a000}.thrv_lead_generation.tve_purple input[type="radio"]:checked+label:after{background-color:#694398}.thrv_lead_generation.tve_red input[type="radio"]:checked+label:after{background-color:#b74c39}.thrv_lead_generation.tve_teal input[type="radio"]:checked+label:after{background-color:#306d62}.thrv_lead_generation.tve_white input[type="radio"]:checked+label:after{background-color:#fff}.tve_lg_checkbox_wrapper{position:relative;padding:5px 20px 5px 0 !important;display:inline-block;width:auto !important}.tve_lg_checkbox_wrapper input[type="checkbox"]:not(:checked),.tve_lg_checkbox_wrapper input[type="checkbox"]:checked{position:absolute;visibility:hidden}.tve_lg_checkbox_wrapper input[type="checkbox"]:not(:checked)+label,.tve_lg_checkbox_wrapper input[type="checkbox"]:checked+label{position:relative;padding-left:35px;cursor:pointer;font-size:22px !important;color:#fff;font-family:'Roboto';font-weight:300}.tve_lg_checkbox_wrapper input[type="checkbox"]:not(:checked)+label:before,.tve_lg_checkbox_wrapper input[type="checkbox"]:checked+label:before{content:'';position:absolute;left:0;top:2px;width:22px;height:22px;background-color:#202020;border-top:1px solid #040404}.tve_lg_checkbox_wrapper input[type="checkbox"]:not(:checked)+label:after,.tve_lg_checkbox_wrapper input[type="checkbox"]:checked+label:after{content:"\e601";font-family:'rockstar_autoresponder';position:absolute;top:6px;left:4px;font-size:15px;color:#fff;transition:all .2s}.tve_lg_checkbox_wrapper input[type="checkbox"]:not(:checked)+label:after{opacity:0;transform:scale(0)}.tve_lg_checkbox_wrapper input[type="checkbox"]:checked+label:after{opacity:1;transform:scale(1)}.tve_lg_checkbox_wrapper input[type="checkbox"].tve-lg-error+label:before{background-color:#dda8a7;border:1px solid #a94442;box-shadow:inset 0px 2px 2px 0px #111}.thrv_lead_generation.tve_black input[type="checkbox"]:not(:checked)+label:after,.thrv_lead_generation.tve_black input[type="checkbox"]:checked+label:after{color:#181818}.thrv_lead_generation.tve_blue input[type="checkbox"]:not(:checked)+label:after,.thrv_lead_generation.tve_blue input[type="checkbox"]:checked+label:after{color:#305584}.thrv_lead_generation.tve_green input[type="checkbox"]:not(:checked)+label:after,.thrv_lead_generation.tve_green input[type="checkbox"]:checked+label:after{color:#7c9735}.thrv_lead_generation.tve_orange input[type="checkbox"]:not(:checked)+label:after,.thrv_lead_generation.tve_orange input[type="checkbox"]:checked+label:after{color:#d2a000}.thrv_lead_generation.tve_purple input[type="checkbox"]:not(:checked)+label:after,.thrv_lead_generation.tve_purple input[type="checkbox"]:checked+label:after{color:#694398}.thrv_lead_generation.tve_red input[type="checkbox"]:not(:checked)+label:after,.thrv_lead_generation.tve_red input[type="checkbox"]:checked+label:after{color:#b74c39}.thrv_lead_generation.tve_teal input[type="checkbox"]:not(:checked)+label:after,.thrv_lead_generation.tve_teal input[type="checkbox"]:checked+label:after{color:#306d62}.thrv_lead_generation.tve_white input[type="checkbox"]:not(:checked)+label:after,.thrv_lead_generation.tve_white input[type="checkbox"]:checked+label:after{color:#fff}.tve_lg_textarea textarea{min-height:80px !important;background-color:#202020;border:1px solid #040404 !important;font-family:'Roboto';font-weight:300;font-size:16px;border-radius:5px !important}body{min-height:100%;overflow-x:hidden}body.tve_lp{background-color:#000;background-image:url("./images/lead_generation_image.jpg");background-size:cover;background-repeat:no-repeat}.tve_wrap_all{margin-top:10%}.tve_wrap_all h1,.tve_wrap_all h2,.tve_wrap_all h3,.tve_wrap_all h4,.tve_wrap_all h5,.tve_wrap_all h6,.tve_wrap_all p,.tve_wrap_all blockquote,.tve_wrap_all a,.tve_wrap_all address,.tve_wrap_all pre,.tve_wrap_all blockquote,.tve_wrap_all ul,.tve_wrap_all li{font-family:'Roboto';font-weight:300}.tve_wrap_all span{font-family:inherit}.tve_wrap_all .out{margin-left:0;margin-right:0}.tve_wrap_all .tve_lp_content{max-width:650px;margin:0 auto;padding:10px}.tve_wrap_all a,.tve_wrap_all a:hover{color:inherit}.tve_wrap_all .bold_text{font-weight:900}.tve_wrap_all .tve_lp_lead_generation_image .thrv_lead_generation input[type='text'],.tve_wrap_all .tve_lp_lead_generation_image .thrv_lead_generation input[type="email"]{font-family:'Roboto';border-width:1px;border-color:rgba(0,0,0,0.7);background-color:rgba(0,0,0,0.35);border-radius:3px;box-shadow:0 2px 0 0 rgba(255,255,255,0.19);font-size:26px;font-style:normal;color:#fff;height:auto;font-weight:300;margin-bottom:30px;padding:10px}.tve_wrap_all .tve_lp_lead_generation_image .thrv_lead_generation input[type='text'].placeholder,.tve_wrap_all .tve_lp_lead_generation_image .thrv_lead_generation input[type="email"].placeholder{color:#ffffff}.tve_wrap_all .tve_lp_lead_generation_image .thrv_lead_generation input[type='text']:-moz-placeholder,.tve_wrap_all .tve_lp_lead_generation_image .thrv_lead_generation input[type="email"]:-moz-placeholder{color:#ffffff}.tve_wrap_all .tve_lp_lead_generation_image .thrv_lead_generation input[type='text']::-moz-placeholder,.tve_wrap_all .tve_lp_lead_generation_image .thrv_lead_generation input[type="email"]::-moz-placeholder{color:#ffffff}.tve_wrap_all .tve_lp_lead_generation_image .thrv_lead_generation input[type='text']:-ms-input-placeholder,.tve_wrap_all .tve_lp_lead_generation_image .thrv_lead_generation input[type="email"]:-ms-input-placeholder{color:#ffffff}.tve_wrap_all .tve_lp_lead_generation_image .thrv_lead_generation input[type='text']::-webkit-input-placeholder,.tve_wrap_all .tve_lp_lead_generation_image .thrv_lead_generation input[type="email"]::-webkit-input-placeholder{color:#ffffff}.tve_wrap_all .tve_lp_lead_generation_image .thrv_lead_generation input[type='text']:focus,.tve_wrap_all .tve_lp_lead_generation_image .thrv_lead_generation input[type='text']:active,.tve_wrap_all .tve_lp_lead_generation_image .thrv_lead_generation input[type='text']:hover,.tve_wrap_all .tve_lp_lead_generation_image .thrv_lead_generation input[type="email"]:focus,.tve_wrap_all .tve_lp_lead_generation_image .thrv_lead_generation input[type="email"]:active,.tve_wrap_all .tve_lp_lead_generation_image .thrv_lead_generation input[type="email"]:hover{outline-color:rgba(0,0,0,0.7);outline-width:0;background-color:rgba(0,0,0,0.5);border-width:1px;border-color:rgba(0,0,0,0.7)}.tve_wrap_all .tve_lp_lead_generation_image .thrv_lead_generation .tve_submit_container button{text-shadow:0 2px 4px rgba(0,0,0,0.42);box-shadow:0 1px 2px 0 #fff inset,0 2px 2px 0 rgba(0,0,0,0.34);background-image:none;font-family:'Roboto';font-weight:900;font-size:26px;padding:10px}.tve_wrap_all .tve_lp_lead_generation_image .thrv_lead_generation .tve_submit_container button:active{box-shadow:0 2px 2px 0 rgba(0,0,0,0.34)}.tve_lp_lead_generation_image .thrv_lead_generation.tve_black .tve_submit_container button{border:1px solid #151515;background-color:#3d3c3c}.tve_lp_lead_generation_image .thrv_lead_generation.tve_black .tve_submit_container button:hover{background-color:#3d3d3d}.tve_lp_lead_generation_image .thrv_lead_generation.tve_black .tve_submit_container button:active{background-color:"black"}.tve_lp_lead_generation_image .thrv_lead_generation.tve_blue .tve_submit_container button{border:1px solid #285f7e;background-color:#46a0d3}.tve_lp_lead_generation_image .thrv_lead_generation.tve_blue .tve_submit_container button:hover{background-color:#73bfeb}.tve_lp_lead_generation_image .thrv_lead_generation.tve_blue .tve_submit_container button:active{background-color:"blue"}.tve_lp_lead_generation_image .thrv_lead_generation.tve_green .tve_submit_container button{border:1px solid #127a20;background-color:#40c551}.tve_lp_lead_generation_image .thrv_lead_generation.tve_green .tve_submit_container button:hover{background-color:#20e73a}.tve_lp_lead_generation_image .thrv_lead_generation.tve_green .tve_submit_container button:active{background-color:"green"}.tve_lp_lead_generation_image .thrv_lead_generation.tve_orange .tve_submit_container button{border:1px solid #c09300;background-color:#fad232}.tve_lp_lead_generation_image .thrv_lead_generation.tve_orange .tve_submit_container button:hover{background-color:#fc0}.tve_lp_lead_generation_image .thrv_lead_generation.tve_orange .tve_submit_container button:active{background-color:"orange"}.tve_lp_lead_generation_image .thrv_lead_generation.tve_purple .tve_submit_container button{border:1px solid #451c79;background-color:#b274ff}.tve_lp_lead_generation_image .thrv_lead_generation.tve_purple .tve_submit_container button:hover{background-color:#934de9}.tve_lp_lead_generation_image .thrv_lead_generation.tve_purple .tve_submit_container button:active{background-color:"purple"}.tve_lp_lead_generation_image .thrv_lead_generation.tve_red .tve_submit_container button{border:1px solid #f10;background-color:#ee3528}.tve_lp_lead_generation_image .thrv_lead_generation.tve_red .tve_submit_container button:hover{background-color:#e03f34}.tve_lp_lead_generation_image .thrv_lead_generation.tve_red .tve_submit_container button:active{background-color:"red"}.tve_lp_lead_generation_image .thrv_lead_generation.tve_teal .tve_submit_container button{border:1px solid #0e7361;background-color:#45e4c8}.tve_lp_lead_generation_image .thrv_lead_generation.tve_teal .tve_submit_container button:hover{background-color:#58b9a8}.tve_lp_lead_generation_image .thrv_lead_generation.tve_teal .tve_submit_container button:active{background-color:"teal"}.tve_lp_lead_generation_image .thrv_lead_generation.tve_white .tve_submit_container button{border:1px solid #6f6f6f;background-color:#e0dede}.tve_lp_lead_generation_image .thrv_lead_generation.tve_white .tve_submit_container button:hover{background-color:#e2e1e1}.tve_lp_lead_generation_image .thrv_lead_generation.tve_white .tve_submit_container button:active{background-color:"white"}
Error 404 (Not Found)!!1404. That’s an error.
The requested URL was not found on this server. That’s all we know.

Hotel |
Charges & Inclusions |
Studio M Arabian Plaza 3* |
From USD 976 |
Ibis Styles Hotel Deira 3* |
From USD 974 |
Citymax Burdubai Hotel 3* |
From USD 925 |
Hilton Garden Hotel Deira 4* |
From USD 994 |
Wyndham Hotel Deira 4* |
From USD 997 |
Form Hotel by Marriot 4* |
From USD 963 |
Hyatt Regency Dubai Hotel 5* |
From USD 1035 |
Avani Deira 5* |
From USD 992 |
Package Includes
- Return Air ticket
- 4 nights accommodation with daily breakfast
- Return Dubai airport transfer
- Guided Dubai Half Day city tour
- Creek Dhow cruise with dinner
- Desert Safari with BBQ dinner
- All tours & transfers are on sic basis
- UAE visa
TD will be paid by the guest
Hotel check in time is 2 pm.