Is Wild Camping Legal in Portugal
Campervans sit in this funny grey area between wild camping and simply sleeping in your vehicle.
Wild camping means camping somewhere outside a designated camping area – so a beach, a car park, the woods, mountain trails, anywhere that isn’t an official campsite.
Portuguese law generally bans camping in protected natural areas and many coastal zones unless the spot is specifically authorised, which is where a lot of the confusion comes from.
Sleeping in your vehicle, however, is exactly what it sounds like: you sleep inside the van. This is allowed in most places as long as there are no signs prohibiting overnight parking or banning motorhomes entirely.
So what’s the difference?
The nuance comes down to what counts as “camping activities.”
Let’s say you pull into a scenic lookout to catch sunrise and decide to spend the night. That’s fine.
But the moment you roll out your awning, put out your levelling blocks, or set up chairs, it becomes camping behaviour and isn’t allowed.
In some cases, you can even be classed as “camping” just for leaving your electric step out or having outward-opening windows extended.
Why? Because your vehicle is now taking up more space than a normally parked vehicle, which can block access or parking in narrow spots.
It’s all very nuanced, so we always recommend reading our full post on wild camping in Portugal and how to find legal free camping while you’re here.
And if you’re ever in doubt? Don’t risk it. It’s people who camp anywhere regardless of the rules who cause more “no overnight parking” signs to appear.

A free campsite we enjoyed in Summer
Daytime Campervan Parking Tips
We touched on this earlier, but parking in Portugal can be a real challenge if you’re in a large campervan.
In fact, if you’re hiring one, we strongly recommend waiting until you’re ready to leave the city you’ve flown into.
There’s no point picking it up at the airport only to spend your first few days battling impossible inner-city parking.
Before arriving in any town or village, it’s worth pre-planning a few potential parking spots.
We usually do a quick check on Google Maps and use Street View to “drive” around the area in advance, making sure the car park is accessible. Look out for height barriers and check whether street parking spaces are long enough for your vehicle.
It sounds like extra work – and yes, part of the joy of a road trip is stopping wherever you want – but trust us, nothing kills the vibe faster than arriving somewhere beautiful and realising you have absolutely nowhere to park… especially when you’re trying to squeeze a van that’s ten times bigger than anything the locals are driving through narrow, traditional roads.
This is exactly why, in many of our road trip itineraries, we’ve started including parking maps. It just makes your planning (and your sanity) a whole lot easier.
How To Find Overnight Parking
There are some great apps out there for finding overnight parking, but our favourite is Park4Night.
The premium version is €9.99 and well worth the money because it allows you to filter your searches by what you’re looking for, including free or paid camp sites and even day time parking! We always read the reviews to avoid any nasty surprises too.
Of course, you don’t need to rely on an app to find overnight parking.
If you’re savvy with the rules and know your way around Google Maps, you can often find things nearby that aren’t on any of the apps.
These are sometimes the best park ups because you’re less likely to have anyone else join you.
We used to urban stealth camp a lot in our first campervan, but this was almost 10 years ago when van life was much less of the trend it is today so you could get away with a lot more.
These days, I think it’s safe to say most people see a van and assume it’s a campervan even if it’s not obvious so it’s less ‘stealth’ camping now and more ‘try your luck and hope for the best’.
But if you do find yourself somewhere urban that you think is suitable for overnighting you can go ahead and try that too. Just make sure you’re not on residential areas, and only stay for one night (taking your rubbish with you)
Regardless of what style of overnight parking you’re planning to do, there are a few common red flags to watch out for besides no parking signs:
- Broken glass
- Lots of litter
- Heaps of Graffiti
These things are signals that it has the potential to not quite be the peaceful night’s sleep that you were hoping for.
We also like using iOverlander, Camp Guru and WikiCamps for finding camping spots too!
+LmxhYmVsLWRlc2NyaXB0aW9uOjphZnRlciwgI21sYjItMzYyMDU1MzMubWwtZm9ybS1lbWJlZENvbnRhaW5lciAubWwtZm9ybS1lbWJlZFdyYXBwZXIgLm1sLWZvcm0tZW1iZWRCb2R5IC5tbC1mb3JtLWVtYmVkUGVybWlzc2lvbnMgLm1sLWZvcm0tZW1iZWRQZXJtaXNzaW9uc09wdGlvbnNDaGVja2JveCBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2Vkfi5sYWJlbC1kZXNjcmlwdGlvbjo6YWZ0ZXIsICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1maWVsZFJvdyAuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIsICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1ob3Jpem9udGFsUm93IC5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciwgI21sYjItMzYyMDU1MzMubWwtZm9ybS1lbWJlZENvbnRhaW5lciAubWwtZm9ybS1lbWJlZFdyYXBwZXIgLm1sLWZvcm0tZW1iZWRCb2R5IC5tbC1mb3JtLWludGVyZXN0R3JvdXBzUm93IC5tbC1mb3JtLWludGVyZXN0R3JvdXBzUm93Q2hlY2tib3ggaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZH4ubGFiZWwtZGVzY3JpcHRpb246OmFmdGVyIHsKICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZmlsbD0nJTIzZmZmJyBkPSdNNi41NjQuNzVsLTMuNTkgMy42MTItMS41MzgtMS41NUwwIDQuMjYgMi45NzQgNy4yNSA4IDIuMTkzeicvJTNlJTNjL3N2ZyUzZSIpOwogICAgICB9CgogICAgICAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLm1sLWZvcm0tZmllbGRSb3cgLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyLCAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLm1sLWZvcm0tZmllbGRSb3cgLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHsKICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnJTNlJTNjY2lyY2xlIHI9JzMnIGZpbGw9JyUyM2ZmZicvJTNlJTNjL3N2ZyUzZSIpOwogICAgICB9CgogICAgICAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLm1sLWZvcm0tZmllbGRSb3cgLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgI21sYjItMzYyMDU1MzMubWwtZm9ybS1lbWJlZENvbnRhaW5lciAubWwtZm9ybS1lbWJlZFdyYXBwZXIgLm1sLWZvcm0tZW1iZWRCb2R5IC5tbC1mb3JtLWhvcml6b250YWxSb3cgLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgI21sYjItMzYyMDU1MzMubWwtZm9ybS1lbWJlZENvbnRhaW5lciAubWwtZm9ybS1lbWJlZFdyYXBwZXIgLm1sLWZvcm0tZW1iZWRCb2R5IC5tbC1mb3JtLWZpZWxkUm93IC5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1ob3Jpem9udGFsUm93IC5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1lbWJlZFBlcm1pc3Npb25zIC5tbC1mb3JtLWVtYmVkUGVybWlzc2lvbnNPcHRpb25zQ2hlY2tib3ggaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZH4ubGFiZWwtZGVzY3JpcHRpb246OmJlZm9yZSwgI21sYjItMzYyMDU1MzMubWwtZm9ybS1lbWJlZENvbnRhaW5lciAubWwtZm9ybS1lbWJlZFdyYXBwZXIgLm1sLWZvcm0tZW1iZWRCb2R5IC5tbC1mb3JtLWludGVyZXN0R3JvdXBzUm93IC5tbC1mb3JtLWludGVyZXN0R3JvdXBzUm93Q2hlY2tib3ggaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZH4ubGFiZWwtZGVzY3JpcHRpb246OmJlZm9yZSwgI21sYjItMzYyMDU1MzMubWwtZm9ybS1lbWJlZENvbnRhaW5lciAubWwtZm9ybS1lbWJlZFdyYXBwZXIgLm1sLWZvcm0tZW1iZWRCb2R5IC5tbC1mb3JtLWNoZWNrYm94Um93IGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWR+LmxhYmVsLWRlc2NyaXB0aW9uOjpiZWZvcmUgIHsKICAgICAgICAgIGJvcmRlci1jb2xvcjogI2ZmZmZmZiFpbXBvcnRhbnQ7CiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmIWltcG9ydGFudDsKICAgICAgfQoKICAgICAgI21sYjItMzYyMDU1MzMubWwtZm9ybS1lbWJlZENvbnRhaW5lciAubWwtZm9ybS1lbWJlZFdyYXBwZXIgLm1sLWZvcm0tZW1iZWRCb2R5IC5tbC1mb3JtLWZpZWxkUm93IC5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1ob3Jpem9udGFsUm93IC5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1maWVsZFJvdyAuY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIsICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1ob3Jpem9udGFsUm93IC5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciwgI21sYjItMzYyMDU1MzMubWwtZm9ybS1lbWJlZENvbnRhaW5lciAubWwtZm9ybS1lbWJlZFdyYXBwZXIgLm1sLWZvcm0tZW1iZWRCb2R5IC5tbC1mb3JtLWZpZWxkUm93IC5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1maWVsZFJvdyAuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIsICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1ob3Jpem9udGFsUm93IC5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1ob3Jpem9udGFsUm93IC5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7CiAgICAgICAgICAgdG9wOiAycHg7CiAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgfQoKICAgICAgI21sYjItMzYyMDU1MzMubWwtZm9ybS1lbWJlZENvbnRhaW5lciAubWwtZm9ybS1lbWJlZFdyYXBwZXIgLm1sLWZvcm0tZW1iZWRCb2R5IC5tbC1mb3JtLWVtYmVkUGVybWlzc2lvbnMgLm1sLWZvcm0tZW1iZWRQZXJtaXNzaW9uc09wdGlvbnNDaGVja2JveCAubGFiZWwtZGVzY3JpcHRpb246OmJlZm9yZSwgI21sYjItMzYyMDU1MzMubWwtZm9ybS1lbWJlZENvbnRhaW5lciAubWwtZm9ybS1lbWJlZFdyYXBwZXIgLm1sLWZvcm0tZW1iZWRCb2R5IC5tbC1mb3JtLWVtYmVkUGVybWlzc2lvbnMgLm1sLWZvcm0tZW1iZWRQZXJtaXNzaW9uc09wdGlvbnNDaGVja2JveCAubGFiZWwtZGVzY3JpcHRpb246OmFmdGVyLCAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLm1sLWZvcm0tY2hlY2tib3hSb3cgLmxhYmVsLWRlc2NyaXB0aW9uOjpiZWZvcmUsICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1jaGVja2JveFJvdyAubGFiZWwtZGVzY3JpcHRpb246OmFmdGVyIHsKICAgICAgICAgICB0b3A6IDBweCFpbXBvcnRhbnQ7CiAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveCFpbXBvcnRhbnQ7CiAgICAgIH0KCiAgICAgICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1jaGVja2JveFJvdyAubGFiZWwtZGVzY3JpcHRpb246OmJlZm9yZSwgI21sYjItMzYyMDU1MzMubWwtZm9ybS1lbWJlZENvbnRhaW5lciAubWwtZm9ybS1lbWJlZFdyYXBwZXIgLm1sLWZvcm0tZW1iZWRCb2R5IC5tbC1mb3JtLWNoZWNrYm94Um93IC5sYWJlbC1kZXNjcmlwdGlvbjo6YWZ0ZXIgewogICAgICAgIHRvcDogMHB4IWltcG9ydGFudDsKICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94IWltcG9ydGFudDsKICAgICAgfQoKICAgICAgICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1pbnRlcmVzdEdyb3Vwc1JvdyAubWwtZm9ybS1pbnRlcmVzdEdyb3Vwc1Jvd0NoZWNrYm94IC5sYWJlbC1kZXNjcmlwdGlvbjo6YWZ0ZXIgewogICAgICAgICAgICB0b3A6IDBweCFpbXBvcnRhbnQ7CiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3ghaW1wb3J0YW50OwogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgICAgIGxlZnQ6IC0xLjVyZW07CiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgICAgICB3aWR0aDogMXJlbTsKICAgICAgICAgICAgaGVpZ2h0OiAxcmVtOwogICAgICAgICAgICBjb250ZW50OiAiIjsKICAgICAgIH0KCiAgICAgICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1pbnRlcmVzdEdyb3Vwc1JvdyAubWwtZm9ybS1pbnRlcmVzdEdyb3Vwc1Jvd0NoZWNrYm94IC5sYWJlbC1kZXNjcmlwdGlvbjo6YmVmb3JlIHsKICAgICAgICB0b3A6IDBweCFpbXBvcnRhbnQ7CiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveCFpbXBvcnRhbnQ7CiAgICAgIH0KCiAgICAgICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7CiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgICB0b3A6IDRweDsKICAgICAgICAgIGxlZnQ6IC0xLjVyZW07CiAgICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICAgIHdpZHRoOiAxNnB4OwogICAgICAgICAgaGVpZ2h0OiAxNnB4OwogICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICAgICAgICBjb250ZW50OiAiIjsKICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7CiAgICAgICAgICBib3JkZXI6ICNhZGI1YmQgc29saWQgMXB4OwogICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgICB9CgogICAgICAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7CiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgICB0b3A6IDJweCFpbXBvcnRhbnQ7CiAgICAgICAgICBsZWZ0OiAtMS41cmVtOwogICAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgICB3aWR0aDogMXJlbTsKICAgICAgICAgIGhlaWdodDogMXJlbTsKICAgICAgICAgIGNvbnRlbnQ6ICIiOwogICAgICB9CgogICAgICAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLm1sLWZvcm0tZW1iZWRQZXJtaXNzaW9ucyAubWwtZm9ybS1lbWJlZFBlcm1pc3Npb25zT3B0aW9uc0NoZWNrYm94IC5sYWJlbC1kZXNjcmlwdGlvbjo6YmVmb3JlLCAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLm1sLWZvcm0taW50ZXJlc3RHcm91cHNSb3cgLm1sLWZvcm0taW50ZXJlc3RHcm91cHNSb3dDaGVja2JveCAubGFiZWwtZGVzY3JpcHRpb246OmJlZm9yZSwgI21sYjItMzYyMDU1MzMubWwtZm9ybS1lbWJlZENvbnRhaW5lciAubWwtZm9ybS1lbWJlZFdyYXBwZXIgLm1sLWZvcm0tZW1iZWRCb2R5IC5tbC1mb3JtLWNoZWNrYm94Um93IC5sYWJlbC1kZXNjcmlwdGlvbjo6YmVmb3JlIHsKICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICAgIHRvcDogNHB4OwogICAgICAgICAgbGVmdDogLTEuNXJlbTsKICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgICAgd2lkdGg6IDE2cHg7CiAgICAgICAgICBoZWlnaHQ6IDE2cHg7CiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgICAgIGNvbnRlbnQ6ICIiOwogICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsKICAgICAgICAgIGJvcmRlcjogI2FkYjViZCBzb2xpZCAxcHg7CiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICAgIH0KCiAgICAgICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1lbWJlZFBlcm1pc3Npb25zIC5tbC1mb3JtLWVtYmVkUGVybWlzc2lvbnNPcHRpb25zQ2hlY2tib3ggLmxhYmVsLWRlc2NyaXB0aW9uOjphZnRlciB7CiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgICB0b3A6IDBweCFpbXBvcnRhbnQ7CiAgICAgICAgICBsZWZ0OiAtMS41cmVtOwogICAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgICB3aWR0aDogMXJlbTsKICAgICAgICAgIGhlaWdodDogMXJlbTsKICAgICAgICAgIGNvbnRlbnQ6ICIiOwogICAgICB9CgogICAgICAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLm1sLWZvcm0tY2hlY2tib3hSb3cgLmxhYmVsLWRlc2NyaXB0aW9uOjphZnRlciB7CiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgICB0b3A6IDBweCFpbXBvcnRhbnQ7CiAgICAgICAgICBsZWZ0OiAtMS41cmVtOwogICAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgICB3aWR0aDogMXJlbTsKICAgICAgICAgIGhlaWdodDogMXJlbTsKICAgICAgICAgIGNvbnRlbnQ6ICIiOwogICAgICB9CgogICAgICAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHsKICAgICAgICAgIGJhY2tncm91bmQ6IG5vLXJlcGVhdCA1MCUvNTAlIDUwJTsKICAgICAgfQogICAgICAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyLCAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLm1sLWZvcm0tZW1iZWRQZXJtaXNzaW9ucyAubWwtZm9ybS1lbWJlZFBlcm1pc3Npb25zT3B0aW9uc0NoZWNrYm94IC5sYWJlbC1kZXNjcmlwdGlvbjo6YWZ0ZXIsICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1pbnRlcmVzdEdyb3Vwc1JvdyAubWwtZm9ybS1pbnRlcmVzdEdyb3Vwc1Jvd0NoZWNrYm94IC5sYWJlbC1kZXNjcmlwdGlvbjo6YWZ0ZXIsICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1jaGVja2JveFJvdyAubGFiZWwtZGVzY3JpcHRpb246OmFmdGVyIHsKICAgICAgICAgIGJhY2tncm91bmQ6IG5vLXJlcGVhdCA1MCUvNTAlIDUwJTsKICAgICAgfQoKICAgICAgI21sYjItMzYyMDU1MzMubWwtZm9ybS1lbWJlZENvbnRhaW5lciAubWwtZm9ybS1lbWJlZFdyYXBwZXIgLm1sLWZvcm0tZW1iZWRCb2R5IC5tbC1mb3JtLWZpZWxkUm93IC5jdXN0b20tY29udHJvbCwgI21sYjItMzYyMDU1MzMubWwtZm9ybS1lbWJlZENvbnRhaW5lciAubWwtZm9ybS1lbWJlZFdyYXBwZXIgLm1sLWZvcm0tZW1iZWRCb2R5IC5tbC1mb3JtLWhvcml6b250YWxSb3cgLmN1c3RvbS1jb250cm9sIHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgbWluLWhlaWdodDogMS41cmVtOwogICAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtOwogICAgICB9CgogICAgICAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLm1sLWZvcm0tZmllbGRSb3cgLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQsICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1ob3Jpem9udGFsUm93IC5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWlucHV0LCAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLm1sLWZvcm0tZmllbGRSb3cgLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQsICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1ob3Jpem9udGFsUm93IC5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0IHsKICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICAgIHotaW5kZXg6IC0xOwogICAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgICBwYWRkaW5nOiAwOwogICAgICB9CgogICAgICAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLm1sLWZvcm0tZmllbGRSb3cgLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtbGFiZWwsICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1ob3Jpem9udGFsUm93IC5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWxhYmVsLCAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLm1sLWZvcm0tZmllbGRSb3cgLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtbGFiZWwsICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1ob3Jpem9udGFsUm93IC5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWxhYmVsIHsKICAgICAgICAgIGNvbG9yOiAjZmZmZmZmOwogICAgICAgICAgZm9udC1zaXplOiAxMnB4IWltcG9ydGFudDsKICAgICAgICAgIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsKICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4OwogICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsKICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7CiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7CiAgICAgICAgICBmb250LXdlaWdodDogNzAwOwogICAgICB9CgogICAgICAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLm1sLWZvcm0tZmllbGRSb3cgLmN1c3RvbS1zZWxlY3QsICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1ob3Jpem9udGFsUm93IC5jdXN0b20tc2VsZWN0IHsKICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7CiAgICAgICAgY29sb3I6ICMzMzMzMzMgIWltcG9ydGFudDsKICAgICAgICBib3JkZXItY29sb3I6ICNjY2NjY2M7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4ICFpbXBvcnRhbnQ7CiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZCAhaW1wb3J0YW50OwogICAgICAgIGJvcmRlci13aWR0aDogMXB4ICFpbXBvcnRhbnQ7CiAgICAgICAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmOwogICAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50OwogICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsKICAgICAgICBtYXJnaW4tdG9wOiAwOwogICAgICAgIHBhZGRpbmc6IDEwcHggMjhweCAxMHB4IDEycHggIWltcG9ydGFudDsKICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OwogICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3ggIWltcG9ydGFudDsKICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsKICAgICAgICBoZWlnaHQ6IGF1dG87CiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgICAgICAgYmFja2dyb3VuZDogdXJsKCdodHRwczovL2Fzc2V0cy5tbGNkbi5jb20vbWwvaW1hZ2VzL2RlZmF1bHQvZHJvcGRvd24uc3ZnJykgbm8tcmVwZWF0IHJpZ2h0IC43NXJlbSBjZW50ZXIvOHB4IDEwcHg7CiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOwogICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTsKICAgICAgICBhcHBlYXJhbmNlOiBub25lOwogICAgICB9CgoKICAgICAgI21sYjItMzYyMDU1MzMubWwtZm9ybS1lbWJlZENvbnRhaW5lciAubWwtZm9ybS1lbWJlZFdyYXBwZXIgLm1sLWZvcm0tZW1iZWRCb2R5IC5tbC1mb3JtLWhvcml6b250YWxSb3cgewogICAgICAgIGhlaWdodDogYXV0bzsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBmbG9hdDogbGVmdDsKICAgICAgfQogICAgICAubWwtZm9ybS1mb3JtQ29udGVudC5ob3JvemludGFsRm9ybSAubWwtZm9ybS1ob3Jpem9udGFsUm93IC5tbC1pbnB1dC1ob3Jpem9udGFsIHsgd2lkdGg6IDcwJTsgZmxvYXQ6IGxlZnQ7IH0KICAgICAgLm1sLWZvcm0tZm9ybUNvbnRlbnQuaG9yb3ppbnRhbEZvcm0gLm1sLWZvcm0taG9yaXpvbnRhbFJvdyAubWwtYnV0dG9uLWhvcml6b250YWwgeyB3aWR0aDogMzAlOyBmbG9hdDogbGVmdDsgfQogICAgICAubWwtZm9ybS1mb3JtQ29udGVudC5ob3JvemludGFsRm9ybSAubWwtZm9ybS1ob3Jpem9udGFsUm93IC5tbC1idXR0b24taG9yaXpvbnRhbC5sYWJlbHNPbiB7IHBhZGRpbmctdG9wOiAyNXB4OyAgfQogICAgICAubWwtZm9ybS1mb3JtQ29udGVudC5ob3JvemludGFsRm9ybSAubWwtZm9ybS1ob3Jpem9udGFsUm93IC5ob3Jpem9udGFsLWZpZWxkcyB7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IGZsb2F0OiBsZWZ0OyBwYWRkaW5nLXJpZ2h0OiAxMHB4OyAgfQogICAgICAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLm1sLWZvcm0taG9yaXpvbnRhbFJvdyBpbnB1dCB7CiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsKICAgICAgICBjb2xvcjogIzMzMzMzMzsKICAgICAgICBib3JkZXItY29sb3I6ICNjY2NjY2M7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7CiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7CiAgICAgICAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmOwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBsaW5lLWhlaWdodDogMjBweDsKICAgICAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgICAgIG1hcmdpbi10b3A6IDA7CiAgICAgICAgcGFkZGluZzogMTBweCAxMHB4OwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgb3ZlcmZsb3cteTogaW5pdGlhbDsKICAgICAgfQogICAgICAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLm1sLWZvcm0taG9yaXpvbnRhbFJvdyBidXR0b24gewogICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1REJDRDIgIWltcG9ydGFudDsKICAgICAgICBib3JkZXItY29sb3I6ICM1REJDRDI7CiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsKICAgICAgICBib3JkZXItd2lkdGg6IDFweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgYm94LXNoYWRvdzogbm9uZTsKICAgICAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICBmb250LWZhbWlseTogJ09wZW4gU2FucycsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7CiAgICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7CiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsKICAgICAgICBsaW5lLWhlaWdodDogMjBweDsKICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDsKICAgICAgICBwYWRkaW5nOiAxMHB4ICFpbXBvcnRhbnQ7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgaGVpZ2h0OiBhdXRvOwogICAgICB9CiAgICAgICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1ob3Jpem9udGFsUm93IGJ1dHRvbjpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzMzMyAhaW1wb3J0YW50OwogICAgICAgIGJvcmRlci1jb2xvcjogIzMzMzMzMyAhaW1wb3J0YW50OwogICAgICB9CiAgICAgICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1jaGVja2JveFJvdyBpbnB1dFt0eXBlPSJjaGVja2JveCJdIHsKICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICAgIHBhZGRpbmc6IDA7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHotaW5kZXg6IC0xOwogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgbWFyZ2luLXRvcDogNXB4OwogICAgICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtOwogICAgICAgIG92ZXJmbG93OiB2aXNpYmxlOwogICAgICB9CiAgICAgICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1jaGVja2JveFJvdyAubGFiZWwtZGVzY3JpcHRpb24gewogICAgICAgIGNvbG9yOiAjMDAwMDAwOwogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsKICAgICAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOwogICAgICB9CiAgICAgICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1jaGVja2JveFJvdyBsYWJlbCB7CiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsKICAgICAgICBtYXJnaW46IDA7CiAgICAgICAgcGFkZGluZzogMDsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgbWluLWhlaWdodDogMjRweDsKICAgICAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7CgogICAgICB9CiAgICAgICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1jaGVja2JveFJvdyBsYWJlbCBhIHsKICAgICAgICBjb2xvcjogIzAwMDAwMDsKICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsKICAgICAgfQogICAgICAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLm1sLWZvcm0tY2hlY2tib3hSb3cgbGFiZWwgcCB7CiAgICAgICAgY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDsKICAgICAgICBmb250LWZhbWlseTogJ09wZW4gU2FucycsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWYgIWltcG9ydGFudDsKICAgICAgICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDsKICAgICAgICBmb250LXdlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7CiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDsKICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7CiAgICAgICAgbWFyZ2luOiAwIDVweCAwIDAgIWltcG9ydGFudDsKICAgICAgfQogICAgICAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLm1sLWZvcm0tY2hlY2tib3hSb3cgbGFiZWwgcDpsYXN0LWNoaWxkIHsKICAgICAgICBtYXJnaW46IDA7CiAgICAgIH0KICAgICAgI21sYjItMzYyMDU1MzMubWwtZm9ybS1lbWJlZENvbnRhaW5lciAubWwtZm9ybS1lbWJlZFdyYXBwZXIgLm1sLWZvcm0tZW1iZWRCb2R5IC5tbC1mb3JtLWVtYmVkU3VibWl0IHsKICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7CiAgICAgICAgZmxvYXQ6IGxlZnQ7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgIH0KICAgICAgI21sYjItMzYyMDU1MzMubWwtZm9ybS1lbWJlZENvbnRhaW5lciAubWwtZm9ybS1lbWJlZFdyYXBwZXIgLm1sLWZvcm0tZW1iZWRCb2R5IC5tbC1mb3JtLWVtYmVkU3VibWl0IGJ1dHRvbiB7CiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVEQkNEMiAhaW1wb3J0YW50OwogICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweCAhaW1wb3J0YW50OwogICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsKICAgICAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICBmb250LWZhbWlseTogJ09wZW4gU2FucycsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWYgIWltcG9ydGFudDsKICAgICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDsKICAgICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7CiAgICAgICAgbGluZS1oZWlnaHQ6IDIxcHggIWltcG9ydGFudDsKICAgICAgICBoZWlnaHQ6IGF1dG87CiAgICAgICAgcGFkZGluZzogMTBweCAhaW1wb3J0YW50OwogICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7CiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveCAhaW1wb3J0YW50OwogICAgICB9CiAgICAgICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1lbWJlZFN1Ym1pdCBidXR0b24ubG9hZGluZyB7CiAgICAgICAgZGlzcGxheTogbm9uZTsKICAgICAgfQogICAgICAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLm1sLWZvcm0tZW1iZWRTdWJtaXQgYnV0dG9uOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzMzMzICFpbXBvcnRhbnQ7CiAgICAgIH0KICAgICAgLm1sLXN1YnNjcmliZS1jbG9zZSB7CiAgICAgICAgd2lkdGg6IDMwcHg7CiAgICAgICAgaGVpZ2h0OiAzMHB4OwogICAgICAgIGJhY2tncm91bmQ6IHVybCgnaHR0cHM6Ly9hc3NldHMubWxjZG4uY29tL21sL2ltYWdlcy9kZWZhdWx0L21vZGFsX2Nsb3NlLnBuZycpIG5vLXJlcGVhdDsKICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIG1hcmdpbi10b3A6IC0xMHB4OwogICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRvcDogMDsKICAgICAgICByaWdodDogMDsKICAgICAgfQogICAgICAubWwtZXJyb3IgaW5wdXQsIC5tbC1lcnJvciB0ZXh0YXJlYSwgLm1sLWVycm9yIHNlbGVjdCB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiByZWQhaW1wb3J0YW50OwogICAgICB9CgogICAgICAubWwtZXJyb3IgLmN1c3RvbS1jaGVja2JveC1yYWRpby1saXN0IHsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZWQgIWltcG9ydGFudDsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgcGFkZGluZzogMTBweDsKICAgICAgfQoKICAgICAgLm1sLWVycm9yIC5sYWJlbC1kZXNjcmlwdGlvbiwKICAgICAgLm1sLWVycm9yIC5sYWJlbC1kZXNjcmlwdGlvbiBwLAogICAgICAubWwtZXJyb3IgLmxhYmVsLWRlc2NyaXB0aW9uIHAgYSwKICAgICAgLm1sLWVycm9yIGxhYmVsOmZpcnN0LWNoaWxkIHsKICAgICAgICBjb2xvcjogI2ZmMDAwMCAhaW1wb3J0YW50OwogICAgICB9CgogICAgICAjbWxiMi0zNjIwNTUzMy5tbC1mb3JtLWVtYmVkQ29udGFpbmVyIC5tbC1mb3JtLWVtYmVkV3JhcHBlciAubWwtZm9ybS1lbWJlZEJvZHkgLm1sLWZvcm0tY2hlY2tib3hSb3cubWwtZXJyb3IgLmxhYmVsLWRlc2NyaXB0aW9uIHAsCiAgICAgICNtbGIyLTM2MjA1NTMzLm1sLWZvcm0tZW1iZWRDb250YWluZXIgLm1sLWZvcm0tZW1iZWRXcmFwcGVyIC5tbC1mb3JtLWVtYmVkQm9keSAubWwtZm9ybS1jaGVja2JveFJvdy5tbC1lcnJvciAubGFiZWwtZGVzY3JpcHRpb24gcDpmaXJzdC1sZXR0ZXIgewogICAgICAgIGNvbG9yOiAjZmYwMDAwICFpbXBvcnRhbnQ7CiAgICAgIH0KICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NTBweCl7CgogICAgICAgIC5tbC1mb3JtLWVtYmVkV3JhcHBlci5lbWJlZERlZmF1bHQsIC5tbC1mb3JtLWVtYmVkV3JhcHBlci5lbWJlZFBvcHVwIHsgd2lkdGg6IDEwMCUhaW1wb3J0YW50OyB9CiAgICAgICAgLm1sLWZvcm0tZm9ybUNvbnRlbnQuaG9yb3ppbnRhbEZvcm0geyBmbG9hdDogbGVmdCFpbXBvcnRhbnQ7IH0KICAgICAgICAubWwtZm9ybS1mb3JtQ29udGVudC5ob3JvemludGFsRm9ybSAubWwtZm9ybS1ob3Jpem9udGFsUm93IHsgaGVpZ2h0OiBhdXRvIWltcG9ydGFudDsgd2lkdGg6IDEwMCUhaW1wb3J0YW50OyBmbG9hdDogbGVmdCFpbXBvcnRhbnQ7IH0KICAgICAgICAubWwtZm9ybS1mb3JtQ29udGVudC5ob3JvemludGFsRm9ybSAubWwtZm9ybS1ob3Jpem9udGFsUm93IC5tbC1pbnB1dC1ob3Jpem9udGFsIHsgd2lkdGg6IDEwMCUhaW1wb3J0YW50OyB9CiAgICAgICAgLm1sLWZvcm0tZm9ybUNvbnRlbnQuaG9yb3ppbnRhbEZvcm0gLm1sLWZvcm0taG9yaXpvbnRhbFJvdyAubWwtaW5wdXQtaG9yaXpvbnRhbCA+IGRpdiB7IHBhZGRpbmctcmlnaHQ6IDBweCFpbXBvcnRhbnQ7IHBhZGRpbmctYm90dG9tOiAxMHB4OyB9CiAgICAgICAgLm1sLWZvcm0tZm9ybUNvbnRlbnQuaG9yb3ppbnRhbEZvcm0gLm1sLWJ1dHRvbi1ob3Jpem9udGFsIHsgd2lkdGg6IDEwMCUhaW1wb3J0YW50OyB9CiAgICAgICAgLm1sLWZvcm0tZm9ybUNvbnRlbnQuaG9yb3ppbnRhbEZvcm0gLm1sLWJ1dHRvbi1ob3Jpem9udGFsLmxhYmVsc09uIHsgcGFkZGluZy10b3A6IDBweCFpbXBvcnRhbnQ7IH0KCiAgICAgIH0KICAgIDwvc3R5bGU+CgogICAgCiAgCiAgICAKICAgIAoKICAgIAogICAgCgogICAgCiAgICAKCiAgICAKCiAgICAgIAogICAgICAgIAogICAgICAgIAogICAgICAKCiAgICAgIAogICAgICAgIAogICAgICAgIAogICAgICAKCiAgICAgIAoKICAgICAgICAgICAgCiAgICAgICAgICAgIAogICAgICAgICAgICAKICAgICAgICAgICAgCiAgICAgICAgICAgIAogICAgICAgICAgICAKICAgICAgCgogICAgICAKCiAgICAgIAogICAgICAgIAogICAgICAgIAogICAgICAgICAKICAgICAgICAKICAgICAgICAKICAgICAgCgogICAgICAgIAogICAgICAgIAogICAgICAgIAogICAgICAgIAogICAgICAgIAogICAgICAgIAogICAgICAKCiAgICAgICAKCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAKCgogICAgICAKICAgICAgICAKICAgICAgICAKICAgICAgICAKICAgICAgICAKICAKCgoKICAKICAgICAgICAKICAgICAgICAKICAgICAgICAKICAgICAgCgoKICAgICAgCiAgICAKICAgIAogICAgCiAgICAKICAgIAogICAgCiAgICAKICAKCiAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgIAoKICAgICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgIAoKICAgICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgIAoKICAgICAgIAoKICAgICAgICAKICAgICAgICAKICAgICAgICAKICAgICAgICAKICAgICAgIAoKICAgICAgIAogICAgICAgIAogICAgICAgIAogICAgICAgIAogICAgICAgIAogICAgICAKCiAgICAgIAogICAgICAgIAogICAgICAgIAogICAgICAgIAogICAgICAgIAogICAgICAgIAogICAgICAgIAogICAgICAgIAogICAgICAgCgogICAgCgogICAgCgoKICAgICAgCgoKICAgICAgCgogICAgICAKICAgICAgCgogICAgICAKCiAgICAgIAoKCgoKCiAgICAKCiAgICAgIAogICAgPGRpdiBpZD0ibWxiMi0zNjIwNTUzMyIgY2xhc3M9Im1sLWZvcm0tZW1iZWRDb250YWluZXIgbWwtc3Vic2NyaWJlLWZvcm0gbWwtc3Vic2NyaWJlLWZvcm0tMzYyMDU1MzMiPgogICAgICA8ZGl2IGNsYXNzPSJtbC1mb3JtLWFsaWduLWNlbnRlciAiPgogICAgICAgIDxkaXYgY2xhc3M9Im1sLWZvcm0tZW1iZWRXcmFwcGVyIGVtYmVkRm9ybSI+CgogICAgICAgICAgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJtbC1mb3JtLWVtYmVkSGVhZGVyIj4KICAgICAgICAgICAgCiAgICAgICAgICAgICAgPGltZyBzcmM9Imh0dHBzOi8vc3RvcmFnZS5tbGNkbi5jb20vYWNjb3VudF9pbWFnZS81NDIzNDMvb3FvVTh5QmJSMktEdjh6VnFPNGEzWmZkU1VDbm5tRGZrbm0xYlJNRy5wbmciIGJvcmRlcj0iMCIgc3R5bGU9ImRpc3BsYXk6IGJsb2NrOyI+CiAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgPHN0eWxlPgogICAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NTBweCl7CiAgICAgICAgICAgICAgICAgIC5tbC1mb3JtLWVtYmVkSGVhZGVyIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgPC9zdHlsZT4KCiAgICAgICAgICAgIAogICAgICAgICAgPC9kaXY+CgogICAgICAgICAgPGRpdiBjbGFzcz0ibWwtZm9ybS1lbWJlZEJvZHkgbWwtZm9ybS1lbWJlZEJvZHlEZWZhdWx0IHJvdy1mb3JtIj4KCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1sLWZvcm0tZW1iZWRDb250ZW50IiBzdHlsZT0iICI+CiAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICA8aDQ+8J+amSBPdmVyd2hlbG1lZCBieSBQbGFubmluZyBZb3VyIFBvcnR1Z2FsIFJvYWQgVHJpcD88L2g0PgogICAgICAgICAgICAgICAgPHA+R2V0IHJvYWQgdHJpcCByZWFkeSB3aXRoIG91ciZuYnNwOzxzdHJvbmc+ZnJlZSBQb3J0dWdhbCBwbGFubmVyPC9zdHJvbmc+Jm5ic3A7LSBpbmNsdWRpbmcgc2V0dXAgY2hlY2tsaXN0cywgYnVkZ2V0IHRpcHMsIHNhZmV0eSBhZHZpY2UsIGFuZCBzcGFjZSB0byBtYXAgb3V0IHlvdXIgb3duIHJvdXRlLjwvcD4KPHA+UGx1cyByZWNlaXZlIGJlaGluZC10aGUtc2NlbmVzIHN0b3JpZXMgYW5kJm5ic3A7b3VyIGJlc3QgdGlwcyBmb3Igcm9hZCB0cmlwcGluZywgc3RyYWlnaHQgdG8geW91ciBpbmJveDxicj48L3A+CgogICAgICAgICAgICAgIAogICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgIDxmb3JtIGNsYXNzPSJtbC1ibG9jay1mb3JtIiBhY3Rpb249Imh0dHBzOi8vYXNzZXRzLm1haWxlcmxpdGUuY29tL2pzb25wLzU0MjM0My9mb3Jtcy8xNzc1NzI4MTU3MTE1MDM1MjUvc3Vic2NyaWJlIiBkYXRhLWNvZGU9IiIgbWV0aG9kPSJwb3N0IiB0YXJnZXQ9Il9ibGFuayI+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWwtZm9ybS1mb3JtQ29udGVudCI+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtbC1mb3JtLWZpZWxkUm93ICI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWwtZmllbGQtZ3JvdXAgbWwtZmllbGQtZW1haWwgbWwtdmFsaWRhdGUtZW1haWwgbWwtdmFsaWRhdGUtcmVxdWlyZWQiPgoKICAgICAgICAgICAgICAgICAgICAgIAoKCiAgICAgICAgICAgICAgICAgICAgICA8IS0tIGlucHV0IC0tPgogICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGFyaWEtbGFiZWw9ImVtYWlsIiBhcmlhLXJlcXVpcmVkPSJ0cnVlIiB0eXBlPSJlbWFpbCIgY2xhc3M9ImZvcm0tY29udHJvbCIgZGF0YS1pbnB1dG1hc2s9IiIgbmFtZT0iZmllbGRzW2VtYWlsXSIgcGxhY2Vob2xkZXI9IkVtYWlsIiBhdXRvY29tcGxldGU9ImVtYWlsIj4KICAgICAgICAgICAgICAgICAgICAgIDwhLS0gL2lucHV0IC0tPgoKICAgICAgICAgICAgICAgICAgICAgIDwhLS0gdGV4dGFyZWEgLS0+CiAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgIDwhLS0gL3RleHRhcmVhIC0tPgoKICAgICAgICAgICAgICAgICAgICAgIDwhLS0gc2VsZWN0IC0tPgogICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICA8IS0tIC9zZWxlY3QgLS0+CgogICAgICAgICAgICAgICAgICAgICAgPCEtLSBjaGVja2JveGVzIC0tPgogICAgICAgICAgICAKICAgICAgICAgICAgPCEtLSAvY2hlY2tib3hlcyAtLT4KCiAgICAgICAgICAgICAgICAgICAgICA8IS0tIHJhZGlvIC0tPgogICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICA8IS0tIC9yYWRpbyAtLT4KCiAgICAgICAgICAgICAgICAgICAgICA8IS0tIGNvdW50cmllcyAtLT4KICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgPCEtLSAvY291bnRyaWVzIC0tPgoKCgoKCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgIDwvZGl2PjxkaXYgY2xhc3M9Im1sLWZvcm0tZmllbGRSb3cgbWwtbGFzdC1pdGVtIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtbC1maWVsZC1ncm91cCBtbC1maWVsZC1uYW1lIj4KCiAgICAgICAgICAgICAgICAgICAgICAKCgogICAgICAgICAgICAgICAgICAgICAgPCEtLSBpbnB1dCAtLT4KICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBhcmlhLWxhYmVsPSJuYW1lIiB0eXBlPSJ0ZXh0IiBjbGFzcz0iZm9ybS1jb250cm9sIiBkYXRhLWlucHV0bWFzaz0iIiBuYW1lPSJmaWVsZHNbbmFtZV0iIHBsYWNlaG9sZGVyPSJOYW1lIiBhdXRvY29tcGxldGU9ImdpdmVuLW5hbWUiPgogICAgICAgICAgICAgICAgICAgICAgPCEtLSAvaW5wdXQgLS0+CgogICAgICAgICAgICAgICAgICAgICAgPCEtLSB0ZXh0YXJlYSAtLT4KICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgPCEtLSAvdGV4dGFyZWEgLS0+CgogICAgICAgICAgICAgICAgICAgICAgPCEtLSBzZWxlY3QgLS0+CiAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgIDwhLS0gL3NlbGVjdCAtLT4KCiAgICAgICAgICAgICAgICAgICAgICA8IS0tIGNoZWNrYm94ZXMgLS0+CiAgICAgICAgICAgIAogICAgICAgICAgICA8IS0tIC9jaGVja2JveGVzIC0tPgoKICAgICAgICAgICAgICAgICAgICAgIDwhLS0gcmFkaW8gLS0+CiAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgIDwhLS0gL3JhZGlvIC0tPgoKICAgICAgICAgICAgICAgICAgICAgIDwhLS0gY291bnRyaWVzIC0tPgogICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICA8IS0tIC9jb3VudHJpZXMgLS0+CgoKCgoKICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgCgogICAgICAgICAgICAgIDwhLS0gUHJpdmFjeSBwb2xpY3kgLS0+CiAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgPCEtLSAvUHJpdmFjeSBwb2xpY3kgLS0+CgogICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgCgoKCgoKCiAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ibWwtc3VibWl0IiB2YWx1ZT0iMSI+CgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1sLWZvcm0tZW1iZWRTdWJtaXQiPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT0ic3VibWl0IiBjbGFzcz0icHJpbWFyeSI+SSBuZWVkIHRoaXMgbm93ITwvYnV0dG9uPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICA8YnV0dG9uIGRpc2FibGVkPSJkaXNhYmxlZCIgc3R5bGU9ImRpc3BsYXk6IG5vbmU7IiB0eXBlPSJidXR0b24iIGNsYXNzPSJsb2FkaW5nIj4KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWwtZm9ybS1lbWJlZFN1Ym1pdExvYWQiPjwvZGl2PgogICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic3Itb25seSI+TG9hZGluZy4uLjwvc3Bhbj4KICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgICAKICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJhbnRpY3NyZiIgdmFsdWU9InRydWUiPgogICAgICAgICAgICA8L2Zvcm0+CiAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICA8ZGl2IGNsYXNzPSJtbC1mb3JtLXN1Y2Nlc3NCb2R5IHJvdy1zdWNjZXNzIiBzdHlsZT0iZGlzcGxheTogbm9uZSI+CgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJtbC1mb3JtLXN1Y2Nlc3NDb250ZW50Ij4KICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIDxoND5UaGFuayB5b3UhPC9oND4KICAgICAgICAgICAgICAgIDxwPkNoZWNrIHlvdXIgaW5ib3ggdG8gYWNjZXNzIHlvdXIgcGxhbm5lciE8L3A+CjxwPjxzcGFuPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmZhY2Vib29rLmNvbS9ncm91cHMvcm9hZHRyaXBldXJvcGUiPjxzdHJvbmc+RG9uJ3QgZm9yZ2V0IHRvIGpvaW4gb3VyIHJvYWQgdHJpcHBpbmcgRXVyb3BlIEZhY2Vib29rIGdyb3VwIGZvciBtb3JlIGluc3BpcmF0aW9uIGZyb20gb3VyIGNvbW11bml0eTwvc3Ryb25nPiE8L2E+PC9zcGFuPjwvcD4KICAgICAgICAgICAgICAKICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CgogIAoKICAKICAKICA8c2NyaXB0PgogICAgZnVuY3Rpb24gbWxfd2ViZm9ybV9zdWNjZXNzXzM2MjA1NTMzKCkgewogICAgICB2YXIgJCA9IG1sX2pRdWVyeSB8fCBqUXVlcnk7CiAgICAgICQoJy5tbC1zdWJzY3JpYmUtZm9ybS0zNjIwNTUzMyAucm93LXN1Y2Nlc3MnKS5zaG93KCk7CiAgICAgICQoJy5tbC1zdWJzY3JpYmUtZm9ybS0zNjIwNTUzMyAucm93LWZvcm0nKS5oaWRlKCk7CiAgICB9CiAgICAgIDwvc2NyaXB0PgogIAogIAogICAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9ncm9vdC5tYWlsZXJsaXRlLmNvbS9qcy93L3dlYmZvcm1zLm1pbi5qcz92MTc2ZTEwYmFhNWU3ZWQ4MGQzNWFlMjM1YmUzZDUwMjQiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CiAgICAgICAgPHNjcmlwdD4KICAgICAgICAgICAgZmV0Y2goImh0dHBzOi8vYXNzZXRzLm1haWxlcmxpdGUuY29tL2pzb25wLzU0MjM0My9mb3Jtcy8xNzc1NzI4MTU3MTE1MDM1MjUvdGFrZWwiKQogICAgICAgIDwvc2NyaXB0Pg==
How Toll Roads Work in Portugal
Portugal’s toll system can be confusing if you’re not used to it, especially because many motorways now use electronic-only tolls, not traditional booths.
There are two types you’ll come across:
- Traditional Toll Booths
These are straightforward: choose a lane with a barrier and pay by card or cash.
The green lanes are for vehicles with a Via Verde sensor only.
- Electronic Toll Gantries
These are overhead cameras that automatically charge your licence plate.
There’s no booth, no warning, and no way to pay on the spot… which is why tourists often don’t realise they owe anything until after they leave.
Before departing Portugal, it’s always worth popping into a CTT post office to check if you have outstanding tolls.
Via Verde Options
If you’re renting, most companies offer a Via Verde sensor, and we strongly recommend taking it. It works on both booth lanes and electronic gantries.
If you’re driving your own campervan, Portugal also offers Via Verde Visitors, a device-free system where you simply register your licence plate online and tolls are charged automatically to your card.
Avoiding Tolls
You can avoid toll roads altogether by selecting “avoid tolls” in Google Maps or your GPS. It adds time, but the roads are more scenic.

Driving License Requirements
For most people, a standard driving licence from your home country will be enough to legally drive in Portugal as long as it’s written in the Roman alphabet (so English, French, German etc. are usually fine).
But if yours isn’t – or if you’re from a country where the licence isn’t recognised in the EU – you’ll need to get an International Driving Permit (IDP) before you travel.
These are usually easy to get from your home country and valid for a year.
That said, if you’re planning to rent a campervan, the rental company may have stricter requirements than the law does.
Most require drivers to be at least 21 years old, and many want you to have held your licence for at least one or two years.
If you’re under 25, expect to pay a young driver surcharge. Some larger motorhome rentals even require drivers to be over 25, so double check before you book if you’re right on the edge of those age limits.
We’ve never been asked for an IDP ourselves when picking up a rental in Portugal (Dec’s licences are in English), but we’ve heard of people being turned away or forced to buy expensive insurance on the spot when they didn’t have one. It’s one of those things that’s better to have and not need than the other way around if you’re unsure.
Important Road Rules for Campervans
If you’re road tripping Portugal in your own campervan, there are a few legal must-haves you’ll want to double-check before you even think about crossing over the Europe
What You Legally Need in Your Vehicle:
Portugal (like most of Europe) has a list of mandatory gear you’re expected to carry in your vehicle and yes, they can fine you for not having it, even if you’re just a visitor. Here’s what you need:
- Reflective hi-vis vest for each seat in your vehicle. It must be in the cab area within easy reach and you must wear it before exiting the vehicle in the event of a breakdown.
- Warning triangle. Again, not buried under your kitchen gear, you should be able to grab it easily
- Spare bulbs and fuses. These are technically required, though rarely checked – but good to have anyway.
- Valid insurance and registration documents. If you’re coming from the UK you’ll want to make sure your insurance covers you in Portugal.
- Headlight beam deflectors if your van is from the UK or another country with opposite-side driving.
Basically, if you’re pulled over or break down and can’t produce this stuff, you’re looking at an on-the-spot fine.
It’s worth doing a quick check before you leave home and keeping the vest in your glovebox, not buried under the dog food.
Oh, and One More Thing…
Portuguese (and Spanish) drivers have a particular talent for getting right up your backside on the road. Especially on motorways.
It’s not personal, it’s just… a thing. If you’re not used to tailgating at 120km/h while navigating unfamiliar roads in a high-sided vehicle, it can feel stressful. Deep breaths. Stick to the right lane, ignore the pressure to speed up, and let them pass when you can.
Renting A Campervan In Portugal
There’s one super important piece of information you NEED to know about renting a campervan in Portugal and that’s that it is illegal to privately rent a campervan from an individual who is not registered as a business for this purpose.
I see so many people asking for advice on Facebook about the best company to rent from, and then they’re swamped by individuals looking to rent theirs out while they’re not using it.
It might seem nice to be able to rent from a fellow van lifer but if you have an accident, or something happens to you while you’re on the road, the vehicle insurance is going to be invalid and you’re not going to have a leg to stand on.
Will the person you rent from let you off Scott Free without paying for the damages? I doubt it. Which means you’ll have to pay that upfront from your own pocket. Ouch.
So please make sure if you rent from someone you find on Facebook that they are a registered rental business.
To do this, you can ask for their business NIF. You can then search that NIF via Lookup Tax or VIES which will tell you whether the number is real.
A ‘NIF’ is given to individuals and businesses so it’s important to run it through a check to make sure you have been given a business number.
Huge international campervan companies aren’t the only ones available in Portugal though! Siester Campers is a Portuguese, family owned, business with a great fleet of vehicles.
Ready to Start Planning Your Portugal Campervan Adventure?
Portugal is an incredible country to explore by van, and once you know how to navigate it, the whole experience becomes so much easier (and a lot more fun).
So… what next?
If you’re ready to start mapping out your actual route, a great place to begin is the drive between Porto and Lisbon.
Most people take the coastal road and miss out on so many gems along the way, but there’s a much better way to do it.
👉 Check out our Alternative Porto–Lisbon Road Trip Route
It’s the perfect next step if you want quieter towns, coastal scenery, historic villages, and fewer crowds — basically everything we love on a road trip.
And if you’ve got questions about campervanning in Portugal that we didn’t cover here, join our Road Trip Europe group. We’re more than happy to help!