PMDG 747 week 2 roundup

Welcome back! Last week, we started rebuilding support for the PMDG 747. During the PMDG 737 rebuild series, the blog post titles got very long in some cases. During the PMDG 747 rebuild series, the blog titles will resemble this one: PMDG747 week 2 roundup. With that in mind, let’s get started with the PMDG 747 week 2 roundup! This post may be longer than most, but keep reading to find some interesting changes to the airports database, and the first panel to be supported in the PMDG 747.

 

Airports database

Why the changes?

 

The airports database structure has significantly changed since TFM 23.1, released at the start of January 2023. The new database design reduces the memory footprint of the airports data loaded into memory. When TFM starts, it loads the airports database. This database is over 3GB in size while it lives in memory. Each time a user requests information from the database, it calculates that user’s current location in relation to everything in the world. The resulting airports database takes up an additional 3GB of memory. To reduce the number of times TFM recalculates the user’s current location in the world, TFM constantly recalculates the user’s current location every 250MS. The consequence is that every 250MS, TFM eats another 3GB of memory. This forces the CPU to over work, pushing incomplete work on to the GPU, which eventually overloads. As a result, MSFS users experience audio buffering, jittering or jumping video, or significant lagging when the airports database is loaded. P3D users don’t experience these problems because the airports database is small enough to rebuild without taking up significant portions of computer resources. To make it easier to work with the airports database, all users will have the same changes to work with. Below are the changes made to the new airports database structure.

 

What’s new?

 

* When starting TFM for the first time, you must build the airports database.

* Start TFM.

* Go into TFM settings.

* Find the airports database section in the tree.

* In the airports database window.

* In the P3d airports database area, locate and set the P3D airports database folder.

* In the MSFS area, locate and set your MSFS airports database folder.

* Locate the “rebuild airports database” button and activate it.

* A message will appear, notifying you when the database is finished building.

* Press the OK button to close settings.

* Restart TFM by pressing right bracket (]), then CTRL+SHIFT+X.

* When TFM restarts, it will load the new database.

* Most TFM airport database features such as the ILS tracking system stay the same. We will announch any changes when they occur.

* Most airport database features run faster. A test of the ‘Where am I?’ feature accessed by pressing right bracket (]), then SHIFT+C significantlly improved in speed.

* Report bugs in the GitHub issue queue if you find any problems.

 

What’s missing?

 

* We removed the freeware flight planner. It requires a significant rewrite to comply with the new airports database design.

* We removed the airports search window found under procedures menu in the freeware flight planner. It requires significant rewrites to comply with the new airports database design.

 

PMDG 737 updates

 

The 737 isn’t quite finished yet. There are a few items that need finished. The audio/comms panels are taking a little longer than expected because we need to contact PMDG support for clarification on some of the controls. The FMC redesign is delayed because we are looking into what alternate design will work best. Aside from these outstanding items, the 737 is complete. If you have a special request for the PMDG 737, drop us a line and we will look into it.

 

PMDG 747 updates

 

Overhead Maintenance/Electrical panel

 

We added the overhead maintenance/electrical panel. This panel controls electrical activity in the engine generators and APU generators. It also defines how electricity flows from the APU and generators. As always, there is more than one way to access the controls in a panel. Either use the TAB key and move through the controls, or use the assigned keyboard commands, listed below. Since there are groups of controls in this panel, each keyboard command will take you to the group of controls linked to it.

 

Keyboard commands

 

ALT+G – Generator field reset switches. Group that contains 4 engine generator reset switches. Change by pressing SPACE or ENTER.

ALT+A – APU reset switches. A group that contains the 2 APU reset switches. Change with SPACE or ENTER.

ALT+S – Split system breaker. Change with SPACE or ENTEr.

ALT+N – Ground power test switch. Change with SPACE or ENTER.

ALT+P – Towing power switch (748 only). Change with SPACE or ENTER.

ALT+1 – Generator reset indicators. Readonly.

ALT+2 – APU reset indicators. Readonly.

ALT+3 – Split system breaker indicator. Readonly.

 

 

Other changes

 

The “Where am I?” feature has a new capability. In the past, this feature would announce the runway, gate, or taxiway where the aircraft is currently located when on the ground. In addition to these locations, “Where am I?” will announce the airport code if you are not located at a runway, gate, or taxiway, but are located somewhere within the airport’s geofenced boundaries. This helps identify when you are at the airport in the below cases.

 

  • You ran off the runway during landing.
  • You completely missed the runway during a landing.
  • You are landing on a runway that does not exist in your scenery.
  • * You attempt to drive around the airport and get lost.
  • * Pushback puts part of your aircraft in the grass or other surface.
  • * You attempt to taxi and run off the taxiway onto another surface.
  • * Other scenarios not listed.

 

It is our goal to give the “Where am I?” feature the ability to automatically announce location changes. This post is one of the longer ones we have written, so we will close for now. Until next week, have fun flying!

PMDG rebuild series, week 27: Control Stand, MSFS performance, close to the end

Welcome to week 27 of the PMDG 737 rebuild series. A lot has gone into the past 4 weeks, and we have a lot to cover. The control stand is finished, and we have some bug fixes most people will like. The fall 2022 survey is now closed. Thanks to the people who filled it out. We will post the results on Sunday’s blog post for week 27. Now, on with the new content!

 

MSFS Performance fixes

 

Many users have noticed that TFM will cause MSFS to buffer audio, drop frames in the video, and on occasion crash. The obvious problem is the airports database and its size. The default MSFS airports database is around 780MB on disk. That’s almost 800MB of text files! When loaded into TFM, it expands to around 2GB. For some reason, loading the MSFS airports database caused GPU overloads, dropped frames, and code matrix overloads. We implemented a fix for it. However, our testing is fairly limited to a few users at this point. To check if the problem is fixed for you, do the following.

 

NOTE: The following steps requires Open broadcasting system (OBS). So, make sure you have downloaded, installed, and configured it for an MSFS recording session.

 

  1. Start MSFS and load into a PMDG 737 aircraft.
  2. Start OBS and set up for an MSFS recording.
  3. Start the recording session in OBS.
  4. While recording a video, force TFM to produce problems. A common way to cause problems is open the cockpit panels with left bracket ([), then Ctrl+P.
  5. When done trying to crash MSFS or TFM, stop the OBS recording.
  6. In OBS, go to help>logs>upload and activate the menu item.
  7. In the logs successfully uploaded window, press the analyze button. A webpage appears with the results.
  8. Read through the results. If TFM is not causing problems, you will have no GPU or code matrix overruns.
  9. Close OBS.

 

It would help us if you would send us your OBS analyzer results, especially if it identifies GPU and code matrix problems. You can send the results to info at talkingflightmonitor.com. Note the @ is spelled out with spaces around it.

 

The PMDG 737 FMC slash key

 

The slash (/) key on the PMDG 737 is now fixed. This includes the P3D and MSFS versions of the PMDG 737.

 

Control Stand

 

The control stand is self explanatory, so we wont go into much detail about its operation here. However, we will go over the keyboard commands for each section. Most of these sections are split into groups to accommodate keyboard commands. All of these controls have the ability to be silent. Just go to TFM settings/PMDG/737 speech events/Control Stand to find the sections below. Check the box to have TFM announce the value when it changes, and uncheck the box to have it remain silent when the value changes.

 

CDU

 

  • Has no keyboard commands.

 

Trim

ALT+T – Elevator trim. Use ‘U’ and ‘D’ to change the value.

ALT+A – Aileron trim. Use ‘L’ and ‘R’ to change values. Currently there is no method to center it.

ALT+B – Stab trim. This is a read-only view.

ALT+E – Electrical stab trim switch. Use SPACE or ENTER to change.

ALT+P – Auto pilot stab trim. Use SPACE or ENTER to change.

ALT+S – Stab trim. Use SPACE or ENTER to change.

 

Pedestal

 

ALT+F – Pedestal flood light. Use I and D to change the value.

ALT+P – Pedestal brightness. Use I or D to change the value.

ALT+K – Parking brake lever. Use SPACE or ENTER to change.

ALT+1 – Parking brake indicator.

ALT+2 – Pedestal unlock indicator.

ALT+3 – Unlock failure indicator.

 

Fire protection

 

The keyboard commands are grouped because there are too many controls for individual keyboard commands.

 

ALT+H – Fire handles. For each focused fire handle, press P to pull/push the handle, L to turn it left, and R to turn it right. The focused fire handle must be pulled out to turn I while a fire or fire test is in progress.

ALT+C – Fire alarm cutoff switch. Press SPACE or ENTER to change.

ALT+O – Overheat detector switches. Press SPACE or ENTER to change.

ALT+T – Fire tests. Press SPACE or ENTER to change.

ALT+1 – Fire handle indicators.

ALT+2 – Overheat indicators

ALT+4 – Extinguisher test indicators.

 

 

Cargo fire protection

 

ALT+F – Forward selector switch. Press SPACE or ENTER to change.

ALT+A – AFT selector switch. Press SPACE or ENTER to change.

ALT+W – Forward fire detector switch. Press SPACE or ENTER to change.

ALT+E – AFT fire detector switch. Press SPACE or ENTER to change.

ALT+I – Discharge. Press SPACE or ENTER to change.

ALT+T – Test. Press SPACE or ENTER to change.

ALT+1 – Forward extinguisher test indicator

ALT+2 – Aft extinguisher test indicator

ALT+3 – Forward fire indicator.

ALT+4 – Aft fire indicator.

ALT+5 – Detector fault indicator

ALT+6 – Discharge indicator

 

Transponder

 

Left bracket ([), then Shift+T – Opens the alternate transponder window.

ALT+E – Transponder code. Type a value and press ENTER.

ALT+S – Transponder source switch. Press SPACE or ENTER to change.

ALT+A – Transponder alt source. Press SPACE or ENTER to change.

ALT+M – Transponder mode switch. Press SPACE or ENTER to change.

ALT+I – Ident switch. Press SPACE or ENTER to change.

ALT+T = Transponder test. Press SPACE or ENTER to change.. WARNING: the test feature only works under certain conditions.

ALT+1 – Transponder failure indicator

 

The next update will come in week 29 or 30 when we finish up the PMDG 737 and push it out the door. Have fun with the new release. You can download it by clicking the preview releases at the top of the page. If you need help getting started with TFM, feel free to send us a contact by filling out the form on the contact us page. Have fun flying, and don’t forget the bug reports and feature requests.

PMDG 737 series, week 23: Lower forward panel, future features, next up

Welcome to week 23 of the PMDG 737 rebuild series. Last week, we covered the forward panel, the now available TFM 22.11 preview, and a test flight in MSFS with the PMDG 737-800. This week, we are going to cover the lower forward panel, keyboard help mode, simbrief support, the first run quick help dialog, checklists, and what is left to finish in the PMDG 737.

 

Lower forward panel

 

The lower forward panel is self explanatory. It does have quite a few brightness knobs on it though. As a reminder, pressing the letters I or d on your keyboard will increase or decrease brightness knobs values. There are 17 controls on this panel, so keyboard shortcuts take you to groups of controls. Included are the settings to select whether TFM should automatically announce the control state changes. They are located at TFM settings/PMDG/737 speech events/Lower forward.

 

Main panel group (ALT+M)

 

  • Main panel brightness, left side
  • Main panel brightness, right side
  • Main panel brightness, background
  • AFDS (flight directors) brightness

 

GPWS group (ALT+G)

 

  • Flaps inhibit switch
  • Gear inhibit switch
  • Terrain inhibit switch
  • GPWS inop indicator

 

DU group (ALT+D)

 

  • Outboard DU brightness, left side
  • Outboard DU brightness, right side
  • Inboard DU brightness, left side
  • Inboard DU brightness, right side
  • Inboard map brightness, left side
  • Inboard map brightness, right side
  • Upper DU brightness
  • Lower DU brightness
  • Lower map brightness

 

Keyboard help mode

 

Keyboard help mode is similar to NVDA’s or JAWS keyboard help mode. While TFM is running, press right bracket (]), then the question mark (?). Next, press any fully qualified TFM keyboard command to get a basic description of that keyboard command. To turn keyboard help mode off, repeat the keyboard command to turn it on. Another thing to mention here is the keyboard manager. You can now select any command in the lists and press ALT+E to execute that command. Don’t forget to turn keyboard help mode off to return to normal usage. I forgot once on a flight and ended up in a little trouble.

 

Simbrief flight plan support

 

We are going to start working on Simbrief support in TFM. This means that TFM will download the last flight plan generated through the Simbrief website. At first, users will have the ability to display different sections of the flight plan. The sections will be customizable in TFM settings when we get to that point. Later on, we will have the ability to bring the next waypoint feature over to the PMDG aircraft. It can also be used to finish the freeware flight planner, and a limitless number of other things. Get your ideas together because we will need them in the future.

 

Quick help dialog

 

The quick help dialog appears when starting TFM. It displays a few ways to get keyboard help and lists a few of the most common keyboard commands TFM has to offer. To hide the dialog during future TFM starts, check the don’t show me this again option and press the OK button.

 

Checklists and first officer features

 

Earlier today, we found a file in the PMDG 737 folders for MSFS that contained just about all of the checklists for the 737 we would want to use. After requesting permission to use the file, PMDG granted our request. This means we don’t have to come up with alternative checklists for the 737. Developing the automated/manual checklist system is going to be time consuming, but easy. These checklists will eventually work into a first officer type of feature. As with the Simbrief section above, get your ideas for future features together because we will need them later on.

 

What’s left of the PMDG 737?

We have to implement the control stand, fix some bugs with the electrical panel, and clean up code. If no major problems come up, or no more major features need implementing, I suspect that the PMDG 737 for P3D and MSFS should be ready by Christmas vacation.

We covered many things today. Hopefully, the next few weekly blog posts will wrap up progress on the PMDG 737 as well as introducing new features. As always, we will keep everyone up-to-date on what we know.

PMDG 737 rebuild series, week 22: Forward panel, MSFS test flight, preview 22.11

Welcome to week 22 of our PMDG 737 rebuild series. We are now 90% complete. This week and most of last week we took time to investigate issues with fs2020 and completed the forward panel. discussion is below. We will also cover The next preview (22.11).

 

The forward panel

 

We had to break the forward panel into different segments because there were over 50 controls on it. Some of them BVI pilots will never use, such as the DU selectors, some are used elsewhere in TFm, such as N1 or speed brakes.

 

Main forward panel area

 

ALT+W – Nose wheel steering. Press to cycle through options.

ALT+C – Capt. Disengage test. Press to cycle through options.

ALT+O – F/O disengage test. Press to cycle through options.

ALT+I – Cockpit lights. Press to cycle through options.

ALT+F – Fuel flow. Press to cycle through options.

ALT+1 – Left Below GS indicator.

ALT+2 – Right below GS indicator.

ALT+3 – Left FMC indicator.

ALT+4 – Right FMC indicator.

ALT+5 – Stab out of trim indicator.

ALT+6 – Anti-skid inop indicator.

 

MCP

 

ALT+1 – Left auto throttle disengage indicator (red).

ALT+2 – Right auto throttle disengage indicator (red).

ALT+3 – Left auto throttle disengage indicator (amber).

ALT+4 – Right disengage indicator (amber).

ALT+5 – Command A disengage indicator (red).

ALT+6 – Command B disengage indicator (red).

ALT+7 – Command A disengage indicator (amber).

ALT+8 – Command B disengage indicator (amber).

 

DU panel

 

ALT+D – Capt. DU. Press to cycle options.

ALT+U – F/O DU. Press to cycle options.

ALT+C – Capt. Lower DU. press to cycle options.

ALT+F – F/O lower DU. press to cycle options.

 

Standby panel

 

ALT+1 – RMI #1. Press to cycle options.

ALT+2 – RMI #2. Press to cycle options.

 

Speed panel

 

ALT+N – N1 selector. Press to cycle options.

ALT+S – Speed ref. Press to cycle options.

 

Brakes panel

 

ALT+T – Auto brake. See the MCP/Speed box for more information.

ALT+B – Brake pressure indicator.

ALT+1 – Speed brake armed indicator.

ALT+2. – Speed brake do not arm indicator.

ALT+3 – Speed brake extended indicator.

ALT+4 – Auto brake disarm indicator.

 

 

Flaps panel

 

ALT+L – Left flaps needle indicator.

ALT+R – Right flaps needle indicator.

ALT+1 – Flaps in transit indicator.

ALT+2 – Flaps extended indicator.

 

 

Gear panel

 

ALT+G – Gear lever. Press to cycle options.

ALT+1 – Nose gear in transit indicator.

ALT+2 – Left gear in transit indicator.

ALT+3 – Right gear in transit indicator.

ALT+4 – Nose gear locked indicator.

ALT+5 – Left gear locked indicator.

ALT+6 – Right gear locked indicator.

 

 

As always, we will include the TFM settings to turn on/off automatic announcements for all supported aircraft controls/states.

 

Preview 22.11

 

We will release preview 22.11 sometime later this week. Most likely, around the middle of the week. Keep an eye out for it, and don’t forget to read the release notes. This preview has a lot of working parts and new features, including MSFS support for the PMDG 737.

 

MSFS test flight follow-up

 

Last week, I tried an MSFS (fs2020) test flight in the PMDG 737-700 cargo aircraft. After some investigation, here are follow-up points from last week.

 

  • MCP controls such as L-Nav, V-Nav, level change, etc always report off. This is only true if you tell First officer next to leave the MCP alone.
  • The speed brake reports a float such as 4.93 instead of a whole number like 103. This is true and we will have to build a fix for it.
  • It takes TFM a longer time to load the MSFS airports database. This is true. In addition, you must point TFM to the FS2020 airports database after you use makerunways.exe. To point TFM to the FS2020 database, open TFM settings, navigate to the airports database setting category, then use the P3D airports database location to browse for the FS2020 database.
  • First officer fails to do auto flows. True if you have AutoFlows = 0 set in the first officer user.config file. Otherwise, it will use auto flows. The only condition is when it tells you to check doors on pushback. In this case, you will have to press the after start flow yourself.
  • Getting to the briefing, ops, and other features is difficult at best. The click points are icons with no alt text or focusable items. We hear he is going to make an accessible user interface by the middle of this week, so we will wait and see.
  • FSO next fails to program the route and other FMC items. We have mixed results with community members, and are trying to sort out the problem. If it doesn’t program the route pages, you can do it yourself.

My landing rate on this trip was -86. A never before seen in the PMDG 737, at least for me. This would prove that LNav and VNav works better in the MSFS versions. Also, auto throttle works much better in the MSFS version. A better part of my descent, the throttle maintained a .08% thrust.

We will close it up for week 22. We hope the TFM upgrades are working for you. Don’t forget to report bugs and new features, especially on the MSFS side of things. As always, if you need help, let us know.

 

PMDG 737 rebuild series, week 21: MSFS support, forward panel

Last week we covered plans for the forward panel, notes about the preview builds, and the HGS isn’t included in TFM because it has no relevant features for a print disabled person. This week, we are going to cover part of the forward panel and a little on FS2020.

 

The forward panel

 

The forward panel is about 50% finished. It is so large that we had to break it down into a bunch of smaller segments to make it easier to use. Hopefully, it will be ready in week 22. After that, it is off to the lower forward panel, which seems to be a bit smaller.

 

FS2020 and PMDG 737-700

 

I was able to take a test flight in the PMDG 737-700 this afternoon. It was only me, the plane, and first officer next. Aside from a few bloopers at the beginning of climb, the entire flight went without a problem. So, now we can use FS2020 with the PMDG 737 series. The bumps to work out are below.

 

  • L-Nav, V-Nav, FL change, altitude hold, and the speedbrake work differently, even though the offsets have the same names between P3D and FS2020. Everything above except speedbrake reports off no matter the state. The speedbrake reports a low floating point number like 5.33325 instead of 150 in P3D.
  • If you use make runways, give TFM time to load. There are around 43000 airports and a little over 82600 runways in FS2020.
  • Getting first officer next to recognize that the door is opened. First officer only automates flows when the correct conditions are met. Otherwise, we are stuck doing them manually during flight.
  • Someone needs to contact the dev for first officer and ask how we get into the briefing section.
  • An interesting point to watch for… Make sure the FD/L and FD/R and auto throttle are turned on. FSO next misses them for some reason.
  • FSO next will not program the FMC route pages. It sets fuel, payload, and performance pages.

 

Aside from this, the flight was fun and quite amusing. The fun and amusing parts are below.

 

  • The airplane was not loud, even during the takeoff, the engines were quiet.
  • Fuel burn is much better. I burned an average of 4800lbs/hour at fl370 and around 2300lbs/hour on descent.
  • The airplane is much more responsive than the one in P3D.
  • If you have GSX and PACX installed, first officer next will use them during flight. I have GSX for FS2020, and it loaded passengers while we set up the FMC.
  • You have to purchase first officer next for each series of aircraft. Example: FSO next for PMDG 737 series is $30 as of yesterday.
  • ATC behaves itself when you control the aircraft.
  • All gages such as speed and altitude read correctly when you are in control of the aircraft.
  • The aircraft behaves itself when you have control of it.

To make it easier to warp to different places, read the section below.

 

Warping to runways and gates

 

TFM now has native support for warping to gates and runways. While loaded in an aircraft, and with TFM running, do one of the following.

 

  • Press right bracket (]), then Ctrl+G to bring up a dialog for warping to gates.
    • In the airport code text field, type the icao for your airport, then press ENTER.
    • In the gates list, press ENTER on the gate to jump to.
  • Press right bracket (]), then Ctrl+R to bring up a dialog for warping to runways.
    • In the airport code text field, type the icao for your airport and press ENTER.
    • In the runways list, press ENTER on the runway to warp to.

 

This will work for all supported simulators.

 

FS2020 and bugs

 

While on the subject of FS2020, support for it will have the most amount of bugs. When reporting bugs, we ask that you include the simulator version. Some examples are MSFS 1.29.25.0 (found in the FS 2020 title bar), P3D 5.3, or FSX, FSX:Steam. It always helps to know what simulator you work with. Most of them have the same access points, but some of them differ.

Hopefully, most of the FS2020 bugs can get worked out in time for its inaugural MSFS flight next weekend. We will keep everyone updated on all issues and progress as we finish up the PMDG 737, which brings us to the next point of goodness.

 

Synchronous support for PMDG 737

 

When we started thinking about support for FS2020, our eyes glazed over, and we almost passed out from the thought of the work load. Some time ago, I started to wonder how nice it would be if TFM could stay on top of both P3D and FS2020 without much lag. Fast forward to this week, and our dreams came true. Since PMDG released the SDK for the 737-700, we found out that they were identical except for a few offsets and the entire memory block the offsets live. This makes writing code for the PMDG 737 series easy. Now, we can build support for P3D’s version of the PMDG 737 series, and the support will follow you over to FS2020 (except a few bumps in the road now and then). At most, we don’t suspect more than a week or two lag on the FS2020 side.

Now that the cat is out of the bag, surprise!! The first TFM supported aircraft for FS2020. Based on the initial test flight, we feel it safe to start purchasing the PMDG 737 series for FS2020. Have fun, and if you get stuck, we are always happy to help.

PMDG 737 rebuild series, week 20.2: HGS, remaining panels, FS 2020 status

Currently, we are at the end of week 20 of the PMDG 737 rebuild series. Hopefully, we will wrap things up over the next few weeks. There are a few things to consider before we end this series. They are covered in the below sections.

 

The HGS

 

The HGS/hud is a small display on the main forward panels of the 737. It helps pilots get an accurate picture of the runway and surrounding areas. It is often used if flight conditions are less than best. A few examples include dense cloud cover below minimums or at night where the airport is dark. Since it is highly visible, and PMDG doesn’t offer the display in their SDK, we are not inclined to put it in TFM.

The remaining panels

 

The remaining panels are the forward/lower forward panels and the console. These remaining panels will have different sub panels to help reduce clutter.

 

PMDG 737 for FS2020

 

We discovered that PMDG had released their SDK for the 737-700 for FS2020. This may require some reworking because the memory block for the offsets is different than the 737 for P3D. There are a few options when dealing with the problem. First, we could import all of the PMDG offsets into TFM, or we could wait for them to be included in the FSUIPC .net library TFM uses for its connection to the simulator. In either case, it is fairly easy to set TFM up to choose the correct memory block. This way, any work done on the P3D version will automatically carry over to the FS2020 version. At least the SDKs are identical outside of the memory block problem. If you want to take a look at the PMDG 737-700 for FS 2020, you will need the following items.

 

  • FSUIPC 7
  • FS 2020
  • * The PMDG 737-700 for FS2020
  • A copy of TFM preview 22.10 or later.

The panels and automatic announcements of aircraft state will not work, and the FMC will only display the main menu. You may also get random announcements of control states with no values. Again, this is a different offset memory block and needs the attention of the FSUIPC .net library developer, or TFM developers. Since this isn’t officially supported yet, use at your own risk.

We hope to see you during week 21 where we take care of the forward panel and some of the lower forward panel. Until then, happy flying!