{"text_format":"1","workbook":"xlsx","n_sheets":12,"sheets":["Version history","Instructions","Process flow","AO assumptions","EASA SP Exemption Export ","Checklist (optional)","Raw input","Monitoring Data","AO Reporting Template","Data Gaps","Alternative Calculation","Union Airports (Lkups)"],"not_rendered":{"charts":0,"images":3,"macros":1,"external_links":0,"defined_names":80,"comments":4,"pivot_tables":0},"unopened":[],"bounds":{"document_bytes":16777216,"sheet_cells":100000,"rows_first":2000,"rows_last":500,"rows_between":2000,"halvings":0,"cell_chars":16384,"cell_head_chars":4096},"cells_cut":0,"cells_raw":0,"read":"whole","date_system":"1900"}

{"sheet":"Version history","index":0,"n_rows":11,"n_cols":4,"rows_kept":11,"cut":false,"hidden":false,"merged":[[1,1,1,3]]}
[]
[null,"Version history"]
[null,"Version:","Roll out date","Correction"]
[null,"Version 1.1","2024-12-04","Union Airports list updated, with airport names and codes for: ESMA, ESSB, LFOB, LFSB, LIME, & LIRA"]
[null,"Version 1.2","2025-01-22","\n- Instructions: Monitoring Data and Union Airports (Lkups) explanation updated.\n- AO Assumption cell B5: \"Reporting Year Period\"\n- Raw Input column R: Formula changed for Aviation Fuel Quantity to account for Tonnes and not Kg.\n-Raw Input column Q Block Time (hrs): Updated formula to calculate block hours, ensuring accurate calculation of time differences for flight arriving next day.\n- Monitoring Data column AQ to AY: Updated to reflect if previous flight information is missing. New feature in column AY to identify missing information.\n- AO Reporting Template column H: Update, Column H turns to zero for each Union airport where any of the flight under consideration or previous flight has missing information.\n"]
[null,"Version 1.3","2025-02-03","Union Airports list updated, removal of airport names and codes for: EHBK"]
[null,"Version 1.4","2025-12-02","Typo in AO Assumptions tab, row 16, adjusted"]
[null,"Version 1.5","2025-03-14","AO Reporting Template column H: The formula is consistently replicated across rows."]
[null,"Version 2.0","2025-11-12","-Instructions: Updated to reflect latest functionalities\n- AO Assumptions Sheet: Automated row dragging implemented for exmoted routes.\n- Checklist:  Updated to include primary and secondary sources.\n- Raw Input Tab: Automated row dragging. Sorting enabled based on A/C registration, date of operation, and departure time.\n- Monitoring Data Sheet:Automated formula dragging.\nColumns BC to BI updated to include calculations for data gaps and missing information. Highlighting added to indicate changes between raw data and monitoring data.\nTwo new optional automated checks introduced: Sequence Check and Fuel Uplift Check\n- AO Reporting Template:Automated formula dragging.\nColumn H calculation updated to handle null values appropriately.\n- Data Gaps: Calculation logic refined for identifying missing information.\n- Union Airport List: Updated 2025 list with latest entries.\n- Alternative Calculation: Introduced a new tab for alternative computation methods.                                                                                                                                                                           - Examples: this version also contains example data for ease of reference."]
[null,"Version 2.1","2025-12-17","-Name Manager: correction"]
[null,"Version 2.2","2025-02-12","-Instructions: The Unique ID must be pasted in the “Raw Input” tab as text, not as numbers.\n-Raw Input: Formula for calculation in Previous Flight Unique ID column, now populated by tool, and should not be used before sorting. However, it remains the AO’s responsibility to ensure that the previous flight unique ID is correctly and accurately identified.\n-AO reporting template: Column H modified to give value as 0 instead of null\n-Alternative Calculation: ICAO call sign column added.\n"]

{"sheet":"Instructions","index":1,"n_rows":43,"n_cols":10,"rows_kept":43,"cut":false,"hidden":false,"merged":[[28,1,28,8],[18,1,18,8],[31,1,31,8],[40,1,40,8],[3,1,5,8],[27,1,27,8],[29,1,29,8],[2,1,2,8],[15,1,15,8],[16,1,16,8],[25,1,25,8],[26,1,26,8],[19,1,19,8],[20,1,22,8],[24,1,24,8],[23,1,23,8],[7,1,7,8]]}
["Version 2.2"]
[]
[null,"Introduction"]
[null,"During the development of the manual for aircraft operators and verification bodies, the need for additional MRV support to be implemented in the context of the RFEUA regulation was identified.\n\nThis tool aims to gather all the raw data required for reporting under RFEUA and serves as a common tool to be used by aircraft operators, verification bodies, and, if necessary, national authorities. Inspired by the existing MRV of the EU ETS, this monitoring table would feed into the \"official\" ReFuelEU Aviation reporting template as per Annex II of the Regulation and enable streamlined verification.\n\nThis document does not constitute a legally binding document.\n\nDisclaimer!\nThis Excel tool is compatible with Microsoft Office 2021 or later versions. Please ensure that macros are enabled while using this tool.\nDo not change the column names in any of the tabs, as doing so may affect the proper functioning of the file."]
[]
[]
[]
[null,"Steps to enable macros"]
[null,"1.       Go to File → Options."]
[null,"2.       In the left pane, click Trust Center."]
[null,"3.       Click Trust Center Settings… button."]
[null,"4.       Choose Macro Settings from the left."]
[null,"5.       Select ✅ Enable all macros"]
[null,"6.       Click OK → OK again to save."]
[]
[null,"This excel should include ALL flights from the operator"]
[null,"When possible, the aircraft operator should create automated queries from its fuel system to automatically populate the Raw Input cells."]
[]
[null,"Tab by tab explanation"]
[null,"Process:\n* This tab defines the process flow, detailing the origin of the data, the calculation process, and the generation of the ReFuelEU reporting template. These steps are part of the overall monitoring flow and may be documented in written procedures, where applicable. The aircraft operator may modify the diagram or add sections to further explain their monitoring flow and the relevant data sources."]
[null,"AO Assumptions: \nAircraft operator manual inputs: (B3-C19)\n* Complete the aircraft operator manual input with the airline specific information.\n* For flights excluded from the scope of the reporting obligations, the aircraft operator can also mention their own exemption code as well. Ensure that these fields are never left blank. If additional exemption codes are required, they can be entered starting from cell B17. In such cases, remember to update the \"Scopes checks\" formula (Flight Type Scope) in the Monitoring Data tab to ensure the code is accurately captured.\n\nFuel Scheme Definition: (B22-H39)\n* This section provides a space for the aircraft operator to explain its fuel scheme to the national authority if it differs from the EASA fuel scheme.\n* If the aircraft operator does not follow the EASA AMC fuel scheme, it will fill in the table one time, and align with verification bodies to ensure that all of its fuel categories definitions are well understood.\n* The goal is to ensure that none of the categories used in the fuel scheme to justify an uplift (Planned tanked quantity for fuel safety rules) contain any economic tankering.\n* It should be noted that an additional column for specific economic tankering is added in the raw data and monitoring data tabs but will not be used to justify yearly non-tanked quantities.\n\nExemption Article 5(3) tab: (B42-C57)\n* This section consists of formulas that allows aircraft operators to enter their approved exempted routes under Article 5(3) of the ReFuelEU Aviation regulation. After submitting a request via the EASA Sustainability Portal and receiving approval, operators can input the exported data in the EASA SP Exemption Export tab, ensuring it only includes their approved routes. The content in this section is linked to the data from the EASA SP Exemption Export tab.\n"]
[]
[]
[null,"EASA SP Exemption Export:                                                                                                                                                                                                                                                                                                                               This section allows aircraft operators to input their approved exempted routes under Article 5(3) of the ReFuelEU Aviation regulation. Operators can use the Exemption Export function from the Portal to copy data directly for their approved routes. If no exemption route applies, clear the corresponding cells. This tab feeds the formulas in the \"Exemption Article 5(3)\" section of the AO assumptions."]
[null,"Checklist: \n* In this tab, the aircraft operator is required to indicate what primary and secondary data sources have been used."]
[null,"Raw Input:\nThis tab serves as a raw data input feed, directly sourced from system queries, before any validation or intervention by the aircraft operator. It should contain only data extracted from the aircraft operator's primary and secondary sources, allowing the operator to trace changes and backtrack any queries to the raw data.\n\n*The column names should remain same to ensure the query in Monitoring Data tab doesnot get effected.\n*Previous Flight Unique ID, although populated by tool, However, it remains the AO’s responsibility to ensure that the previous flight ID is correctly and accurately identified. It should not be used before sorting\n* Ensure to clear the previous contents only of the input fields (Light yellow fields) without removing the formulas in calculated/automated fiels (green background).\n* Enter the required information into the input fields, ensuring all mandatory columns are completed to ensure accurate results.\n* For calculated fields (Light yellow fields with blue font and green fields), drag the formulas down to the last row of your input data.\n* Previous flight information is only required if the aircraft operator needs to justify yearly non-tanked quantities from a given airport in the AO Reporting Template.\n* Ensure that the data entered does not include any extra spaces, as this could lead to errors or misidentification. For example, the Departure ICAO code should not have any leading or trailing spaces.\n*In case operator uses there own Unique ID, The Unique ID must be pasted in the “Raw input” tab as text and not as numbers.\n                                                                       \n                                                                               --> This button in Raw Data Tab is used to automatically sort the raw data on the basis of aircraft registration, date of flight and Block -off time. "]
[null,"Monitoring Data:\n* This monitoring table serves as a working tab for the aircraft operator.\n* Once all the data is correctly input in the Raw Input tab, the monitoring data should reflect exactly the same data by pressing the designated button.\n\n                                                                                                      --> This button in Monitoring Tab will, Automatically update the rows from the Raw Input tab and will Refresh all formulas within \n\nthe Monitoring tab to reflect the latest data.                    \n* From this point, the aircraft operator can review the data, perform checks, and, if necessary, overwrite some of the data input.\n* The aircraft operator, can overwrite the values for which the data gaps and missing information is being identified. \n* The aircraft operator should only enter alternative calculated values only in the Monitoring tab by overwriting the existing values from the Raw Input tab.\n* Any overwritten cell in the Monitoring tab will be highlighted in red to indicate manual input.\n* For flights with data gaps or missing information, alternative calculation methods may be used, but only within the Monitoring tab. The Raw Input tab should remain unchanged.\n* This approach helps identify the threshold of flights where alternative calculations are applied and ensures traceability.\n* Caution! should be taken: if the Update Monitoring Tab button is pressed after overwriting alternative calculated values, those overwritten values will be replaced. Therefore, after entering manual values, the button should not be pressed again, as formulas update automatically in such cases. This button should only be used to replicate data from the Raw Input tab.\n* This process allows the aircraft operator to track its changes and provide clear information to the verifier.\n* The last columns of this tab contain checks and notes to be added by the aircraft operator, if necessary.\n* Two additional columns—Sequence Check and Fuel Uplift Check—are included to flag specific issues. These additional checks do not affect report generation; they are included solely to flag and confirm and cross check any incomplete data. These are completely optional to refer to. There is no mandatory requirment to address them in the tool.\n* The Sequence Check: This is not intended to flag an error. It helps identify whether any flight is missing in the chronological flow after sorting, supporting completeness checks. AOs should note that it will be normal to have some sequence breaks in the data as, for each registration mark, there will always be a first and a last flight for the year. This column serves solely to support in addressing any sequence breaks where the operator may require the data for the calculation of non tanked fuel for a particular flight.\n* Fuel Uplift check: This is not intended to flag an error but to help the Aircraft Operator cross-check and identify any missed fuel uplift entries.\n* Some formulas in this tab rely on allocated name ranges. Please cross-check and update them as needed in certain cases.\n*The column names should remain same to ensure the query in Monitoring Data tab doesnot get effected.\n*Column AQ - AV i.e. previous flight information : Alternative calculations should not be entered in these columns; they must be recorded in the respective column for the flight.\n"]
[null,"AO Reporting Template:\n* When all the checks are completed in the Monitoring Data tab, the aircraft operator should be able to directly extract the data from this tab and input it into the \"official\" ReFuelEU reporting template to be uploaded to the EASA sustainability portal.\n* Some formulas in this tab rely on allocated name ranges. Please cross-check and update them as needed in certain cases.\n* Column H turns to zero for each Union airport where any of the flight under consideration or previous flight has null values.\n\n                                                                                    --> This button in the AO Reporting Template is used to automatically generate and update the AO report based on the data entered in the Monitoring tab."]
[null,"Alternative Calculation:\n* As indicated in the Monitoring tab, flights with data gaps or missing information are identified. This tab provides a list of such flights where alternative calculation is required.\n*AOs can use this tab internally to perform calculations and record the alternative values.\n*The input values in this tab do not affect any calculations in the \"Monitoring tab\" or the \"AO Reporting tab\".\n*This tab is intended solely for internal record-keeping of flights where alternative methods were applied.\n* If the \"Update Monitoring Tab\" button is pressed after overwriting alternative calculated values in the Monitoring tab, those values will be replaced with data from the Raw Input tab. Therefore, this tab can be used to maintain a record of alternative calculations in case overwritten values are lost due to an update."]
[null,"Union Airports (Lkups): \n*Please ensure that the latest version of the list of Union airport is used, corresponding to the reporting period for which the tool is intended to be utilized by the operator. The list is published on the European Comission's website: https://transport.ec.europa.eu/transport-modes/air/environment/refueleu-aviation_en\n"]
[]
[null,"Recommendations"]
[null,"Before using this file, please carry out the following steps:"]
[null,"1. Flight data should be in sequence. If not, please fill in the information of the previous flight in the same row."]
[null,"2. How to use this file:"]
[null,"Raw data input","Light Yellow field indicates input fields in raw data tab"]
[null,"Can be overwritten","Light Yellow field with blue font are fields with formula, which can be overwritten"]
[null," Do not modify","Green field shows automatically calculated result that should not be modified"]
[null,null,"Red field is the highlighted data that was manually replaced in monitoring data vs the raw data"]
[]
[null,"Reporting flow and structure:"]
[null,"The monitoring data tab is structured as follows, to ensure operational efficiency:"]
[null," Flight Operational Data","Planned Required Fuel","Uplifted Fuel","Planned tanked quantity for fuel safety rules","Actual operational consumption","Scope Checks","Previous flight information","Data Gaps and Missing Information","Supporting Documentation"]

{"sheet":"Process flow","index":2,"n_rows":0,"n_cols":0,"rows_kept":0,"cut":false,"hidden":false,"merged":[]}

{"sheet":"AO assumptions","index":3,"n_rows":47,"n_cols":8,"rows_kept":47,"cut":false,"hidden":false,"merged":[[29,5,31,5],[29,6,31,6],[41,1,41,4],[40,1,40,4],[29,7,31,7],[27,1,34,1],[27,4,28,4],[29,2,31,2],[29,4,36,4],[44,1,44,2],[43,1,43,4],[42,1,42,4],[20,1,20,4],[1,1,1,4],[21,1,22,4],[25,1,25,4]]}
[]
[null,"Aircraft operator manual inputs"]
[null,"Operator ICAO Call Sign"]
[null,"Reporting Period",2025]
[]
[null,"Flights excluded from reporting obligations ","Code used in AO systems"]
[null,"Humanitarian","Humanitarian"]
[null,"Military","Military"]
[null,"State","State"]
[null,"Scientific","Scientific"]
[null,"Medical","Medical"]
[null,"Fire-fighting","Fire-fighting"]
[null,"Training","Training"]
[null,"Circular","Circular"]
[null,"Repatriation","Repatriation"]
[]
[]
[]
[]
[]
[null,"AO Fuel scheme definition"]
[null,"Content:\nFor aircraft operators not following the EASA fuel scheme defined in the AMC, this tab povides the source for further explanation on the type of fuel scheme used and the fuel category definitions. "]
[]
[null,"Is the aicraft operator using the EASA fuel scheme described below ? (Yes/no)",null,"If no, fill in the below table"]
[]
[null,"Detail:\nConsidering the importance of the fuel category in the RFEUA reporting obligations, especially regarding the fuel uplifted for safety reasons, this tab serves at reconciling the definitions of fuel categories from other fuel schemes with the EASA one.\n\nIt should be noted that this tab needs to be updated only once and should not be updated further if the fuel scheme does not change, to the condition that the CA and/or the verifier approves the new categories\n\nInstructions:\nNext to each EASA fuel categories, the AO should provide the corresponding fuel category in their fuel scheme alongside with the definition. This would ensure that none of the fuel category provided in the report captures Economic Tankering"]
[null,"Basic fuel scheme principle","EASA AMC fuel categorisation","EASA AMC definition","RFEUA categorisation\n(informative)","AO applied Fuel Scheme","Category definition","Notes"]
[null,"Legally required fuel","Taxi fuel","Expected fuel before take-off including the APU consumption","Required fuel"]
[null,null,"Trip fuel","Fuel for take-off, climb, cruise, descent, approach, and landing"]
[null,null,"Contingency fuel","Fuel required to compensate for unforeseen factors either (higher of):","Yearly Tanked Fuel Justified under Article 5(2)[3]"]
[null,null,null,"-          5% of the planned trip fuel or"]
[null,null,null,"-          an amount to fly for 5 minutes at holding speed at 1 500 ft (450 m) above the destination aerodrome"]
[null,null,"Destination alternate fuel","Fuel for missed approach and trip towards an alternate airport"]
[null,null,"Final reserve fuel","Required 30 minutes of fuel at holding speed 1500 ft above destination aerodrome according to CAT.OP.MPA.181(c)"]
[null,null,"Additional fuel","Include an amount of fuel that allows the aeroplane to proceed, in the event of an engine failure or loss of pressurisation"]
[null,"Commander’s discretionary fuel","Discretionary fuel","Fuel at the sole discretion of the commander"]
[null,"Extra fuel","Extra fuel","Include anticipated delays or specific operational constraints that can be predicted"]
[null,"Other fuel","N/A","N/A","Economic tankering"]
[]
[]
[null,"Exemption Article 5(3)"]
[null,"This section allows aircraft operators to enter their accepted exempted routes under Article 5(3) of the ReFuelEU Aviation regulation. After submitting a request via the EASA Sustainability Portal and receiving approval, operators can input the exported data in the EASA SP Exemption Export tab, ensuring it only includes their approved routes."]
[null,"Warning: Aircraft operators must drag the formulas down from cells B48 to D48 to capture all approved routes. Extend the formulas only to the number of rows specified in cell D45 Clear the contents if there is no exemption route applicable. "]
[]
[null,"Total Accepted Exemption as per EASA SP Exemption Export tab:",null,{"$f":"COUNTIF('EASA SP Exemption Export '!D:D,\"Accepted\")","v":0}]
[]
[null,"Exempted Routes as per Article 5(3)","Exemption start date","Exemption end date"]

{"sheet":"EASA SP Exemption Export ","index":4,"n_rows":1,"n_cols":21,"rows_kept":1,"cut":false,"hidden":false,"merged":[]}
["Identifier","Creation date","Aircraft operator","Status","Departure airport","Arrival airport","Distance","Last submission date","Date from","End date","Type of exemption","Clarification","Supporting documents","Supporting documents links","Feedback documents","Feedback documents links","Feedback","Approval Authority","Decision by","Decision date","Created by"]

{"sheet":"Checklist (optional)","index":5,"n_rows":63,"n_cols":3,"rows_kept":63,"cut":false,"hidden":false,"merged":[[1,1,1,2],[2,1,2,2]]}
[null,"Optional"]
[null,"Checklist"]
[null,"In the checklist below, the operator is required to indicate whether they will be using an automated formula for each of the listed cells by selecting \"Yes\" or \"No\" from the dropdown menu.\n\nThe operator should specify the system or document from which the data is sourced in the \"Data Sources\" column. "]
[null," Flight Operational Data","Data Sources (Primary and Secondary)"]
[null,"Unique ID"]
[null,"S.no."]
[null,"Date of operation (UTC)"]
[null,"AC registration"]
[null,"Flight ID"]
[null,"ICAO Call sign"]
[null,"AC type"]
[null,"Flight Type"]
[null,"Departing Airport ICAO Code "]
[null,"Departing Airport Name "]
[null,"Departing Country Name"]
[null,"Destination Airport ICAO Code"]
[null,"Destination Airport"]
[null,"Destination Country Name"]
[null,"Departure Time/ Block-off time (UTC)"]
[null,"Arrival Time/ Block-on Time(UTC)"]
[null,"Block Time (hrs)"]
[null,"Planned Required Fuel"]
[null,"Taxi Fuel (tonnes)"]
[null,"Trip Fuel (tonnes)"]
[null,"Aviation Fuel Required (tonnes)"]
[null,"Uplifted Fuel"]
[null,"Volume"]
[null,"Density"]
[null,"Actual Aviation Fuel Uplifted (tonnes)"]
[null,"Planned tanked quantity for fuel safety rules"]
[null,"Contingency Fuel (tonnes)"]
[null,"Alternate Fuel (tonnes)"]
[null,"Final Reserve (tonnes)"]
[null,"Additional Fuel (tonnes)"]
[null,"Discretionary Fuel (tonnes)"]
[null,"Extra Fuel (tonnes)"]
[null,"Fuel for other safety rules (tonnes)"]
[null,"Total tanked quantity justified (tonnes)"]
[null,"Economic tankering"]
[null,"Economic tankering category in the flight plan"]
[null,"Actual operational consumption"]
[null,"Block Off (tonnes)"]
[null,"Block On (tonnes)"]
[null,"Actual Consumption (tonnes)"]
[null,"Scope Checks"]
[null,"Departing Union Airport (Yes/No)"]
[null,"Arriving Union Airport (Yes/No)"]
[null,"Flight type Scope "]
[null,"Exemption (Article 5(3))"]
[null,"ReFuel Reportable"]
[null,"Previous Flight required?"]
[null,"Previous flight information"]
[null,"Previous Flight's Unique ID"]
[null,"Taxi Fuel (tonnes)"]
[null,"Trip Fuel (tonnes)"]
[null,"Aviation Fuel Required (tonnes)"]
[null,"Block Off (tonnes)"]
[null,"Block On (tonnes)"]
[null,"Actual Consumption (tonnes)"]
[null,"OFD (Tonnes) (n-1)"]
[null,"Total Tanked Fuel Justified (n-1)"]
[null,"Justification under Column H"]
[null,"Tanked fuel for Safety Reason  (Column H)"]

{"sheet":"Raw input","index":6,"n_rows":6,"n_cols":30,"rows_kept":6,"cut":false,"hidden":false,"merged":[[0,13,0,14],[0,15,0,17],[0,18,0,24],[0,26,0,27],[0,1,0,12]]}
[" "," Flight Operational Data",null,null,null,null,null,null,null,null,null,null,null,"Planned Required Fuel",null,"Uplifted Fuel",null,null,"Planned tanked quantity for fuel safety rules",null,null,null,null,null,null,"Economic tankering","Actual operational consumption",null,"Previous flight information","Supporting documentation"]
["Total number of flights",{"$f":"COUNTA(B4:B1048576)","v":3},null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,{"$f":"SUM(R4:R1048576)","v":13.1088}]
["Unique ID","Serial No","Date of operation (UTC)","AC registration","Flight ID","ICAO Call sign","AC type","Flight Type","Departing Airport ICAO Code","Destination Airport ICAO Code","Departure Time/ Block-off time (UTC)","Arrival Time/ Block-on Time(UTC)","Block Time (hrs)","Taxi Fuel (tonnes)","Trip Fuel (tonnes)","Volume (Litres)","Density","Actual Aviation Fuel Uplifted (tonnes)","Contingency Fuel (tonnes)","Alternate Fuel (tonnes)","Final Reserve (tonnes)","Additional Fuel (tonnes)","Discretionary Fuel (tonnes)","Extra Fuel (tonnes)","Fuel for other safety rules (tonnes)","Economic tankering category in the flight plan","Block Off (tonnes)","Block On (tonnes)","Previous Flight's Unique ID","Supporting documents (as per Art5 guidelines)"]
[{"$f":"I4&J4&D4&C4&K4","v":"LIBDLFKFABCD457900.113888888888889"},2,"2025-05-13","ABCD",123,null,null,null,"LIBD","LFKF","02:44:00","05:51:00",{"$f":"MOD(L4-K4,1)*24","v":3.1166666666666663},0.2,7.4779999999999998,5462,{"$f":"0.8","v":0.8},{"$f":"P4*Q4/1000","v":4.3696000000000002},0.374,0.81200000000000006,1.1419999999999999,0,null,0.44600000000000001,0,0,10.46,3.28,{"$f":"IF(tblRawInput[[#This Row],[AC registration]]=D3,A3,\"\")","v":""},"Flight log, OFP"]
[{"$f":"I5&J5&D5&C5&K5","v":"LFKFLFLLABCD457910.113888888888889"},1,"2025-05-14","ABCD",123,null,null,null,"LFKF","LFLL","02:44:00","05:51:00",{"$f":"MOD(L5-K5,1)*24","v":3.1166666666666663},0.2,7.4779999999999998,5462,{"$f":"0.8","v":0.8},{"$f":"P5*Q5/1000","v":4.3696000000000002},0.374,0.81200000000000006,1.1419999999999999,0,null,0.44600000000000001,0,0,10.46,3.28,{"$f":"IF(tblRawInput[[#This Row],[AC registration]]=D4,A4,\"\")","v":"LIBDLFKFABCD457900.113888888888889"},"Flight log, OFP"]
[{"$f":"I6&J6&D6&C6&K6","v":"LFLLLIBDABCD457920.114583333333333"},3,"2025-05-15","ABCD",456,null,null,null,"LFLL","LIBD","02:45:00","05:52:00",{"$f":"MOD(L6-K6,1)*24","v":3.1166666666666663},0.2,8,5462,{"$f":"0.8","v":0.8},{"$f":"P6*Q6/1000","v":4.3696000000000002},0.374,0.81200000000000006,1.1419999999999999,0,null,0.44600000000000001,0,0,10.46,3.28,{"$f":"IF(tblRawInput[[#This Row],[AC registration]]=D5,A5,\"\")","v":"LFKFLFLLABCD457910.113888888888889"},"Flight log, OFP"]

{"sheet":"Monitoring Data","index":7,"n_rows":6,"n_cols":68,"rows_kept":6,"cut":false,"hidden":false,"merged":[[0,54,0,63],[0,3,0,5],[0,6,0,16],[0,64,0,67],[1,55,1,56],[1,57,1,58],[0,41,0,49],[0,50,0,53],[1,42,1,44],[1,45,1,47],[1,48,1,49],[0,35,0,40],[0,17,0,19],[0,20,0,22],[0,23,0,30],[0,32,0,34]]}
[null,null,null,"Current data and overwritten values will be replaced by raw data after pressing this button",null,null," Flight Operational Data",null,null,null,null,null,null,null,null,null,null,"Planned Required Fuel",null,null,"Uplifted Fuel",null,null,"Planned tanked quantity for fuel safety rules",null,null,null,null,null,null,null,null,"Actual operational consumption",null,null,"Scope Checks",null,null,null,null,null,"Previous flight information",null,null,null,null,null,null,null,null,"Justification under Column H",null,null,null,"Data Gaps and Missing information",null,null,null,null,null,null,null,null,null,"Additional Checks (optional)"]
[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,{"$f":"SUM(W4:W1048576)","v":13.1088},null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"Planned Required Fuel (n-1)",null,null,"Actual operational consumption (n-1)",null,null,"Outputs for Column H justification",null,null,null,null,null,"Data Gaps threshold","Missing Information (n)",null,"Missing Information (n-1)",null,"Missing Information threshold (n)","Missing Information threshold (n-1)"]
["Unique ID","Serial No","Date of operation (UTC)","AC registration","Flight ID","ICAO Call sign","AC type","Flight Type","Departing Airport ICAO Code","Departing Airport Name","Departing Country Name","Destination Airport ICAO Code","Destination Airport","Destination Country Name","Departure Time/ Block-off time (UTC)","Arrival Time/ Block-on Time(UTC)","Block Time (hrs)","Taxi Fuel (tonnes)","Trip Fuel (tonnes)","Aviation Fuel Required (tonnes)","Volume (Litres)","Density","Actual Aviation Fuel Uplifted (tonnes)","Contingency Fuel (tonnes)","Alternate Fuel (tonnes)","Final Reserve (tonnes)","Additional Fuel (tonnes)","Discretionary Fuel (tonnes)","Extra Fuel (tonnes)","Fuel for other safety rules (tonnes)","Total tanked quantity justified (tonnes)","Economic tankering category in the flight plan","Block Off (tonnes)","Block On (tonnes)","Actual Consumption (tonnes)","Departing Union Airport (Yes/No)","Arriving Union Airport (Yes/No)","Flight type Scope ","Exemption (Article 5(3))","ReFuel Reportable","Previous Flight required?","Previous Flight's Unique ID","Taxi Fuel (tonnes) (n-1)","Trip Fuel (tonnes) (n-1)","Aviation Fuel Required (tonnes) (n-1)","Block Off (tonnes) (n-1)","Block On (tonnes) (n-1)","Actual Consumption (tonnes) (n-1)","OFD (Tonnes) (n-1)","Total Tanked Fuel Justified (n-1)","Tanked fuel for Safety Reason  (Column H)","Justification category","Extra fuel Justification","Supporting documents (as per Art5 guidelines)","Either null values or Alternative calculation used for data gap","Either null values or Alternative calculation used for Planned tanked quantity for fuel safety rules","Either null values or Alternative calculation used for OFD related information ","Either null values or Alternative calculation used for Planned tanked quantity for fuel safety rules (n-1)","Either null values or Alternative calculation used for OFD related information (n-1)","Flight to be considered for threshold missing information? (n)","Flight to be considered for threshold missing information? (n-1)","Flight (n-1) already counted as flight (n) in scope","Null Values for Missing Information related to column H?\n(n)","Null Values for Missing Information related to column H?\n(n-1)","Sequence check","Fuel Uplift check","Checks","Notes"]
["LIBDLFKFABCD457900.113888888888889",2,"2025-05-13","ABCD","123",null,null,null,"LIBD",{"$f":"IFERROR(INDEX(Union_Airports_name,MATCH(Monitoring_Data[[#This Row],[Departing Airport ICAO Code]],Union_Airports_icao_code,0),1),\"\")","v":"Bari"},{"$f":"IFERROR(INDEX(Union_Airports_Country,MATCH(Monitoring_Data[[#This Row],[Departing Airport ICAO Code]],Union_Airports_icao_code,0),1),\"\")","v":"Italy"},"LFKF",{"$f":"IFERROR(INDEX(Union_Airports_name,MATCH(L4,Union_Airports_icao_code,0),1),\"\")","v":"Figari-Sud Corse"},{"$f":"IFERROR(INDEX(Union_Airports_Country,MATCH(L4,Union_Airports_icao_code,0),1),\"\")","v":"France"},"02:44:00","05:51:00",{"$f":"tblRawInput[[#This Row],[Block Time (hrs)]]","v":3.1166666666666663},0.2,7.4779999999999998,{"$f":"SUM(R4,S4)","v":7.6779999999999999},5462,0.8,4.3696000000000002,0.374,0.81200000000000006,1.1419999999999999,0,0,0.44600000000000001,0,{"$f":"SUM(X4:AD4)","v":2.774},0,10.46,3.28,{"$f":"AG4-AH4","v":7.1800000000000015},{"$f":"IF(Reporting_Year=2024,IFERROR(INDEX(Union_Airports_Scope_2024,MATCH(I4,Union_Airports_icao_code,0),1),\"\"),IFERROR(INDEX(Union_Airports_Scope_2025,MATCH(I4,Union_Airports_icao_code,0),1),\"\"))","v":"Yes"},{"$f":"IF(Reporting_Year=2024,IFERROR(INDEX(Union_Airports_Scope_2024,MATCH(L4,Union_Airports_icao_code,0),1),\"\"),IFERROR(INDEX(Union_Airports_Scope_2025,MATCH(L4,Union_Airports_icao_code,0),1),\"\"))","v":"Yes"},{"$f":"IF(I4<>L4,IF(AND(YEAR(C4)=Reporting_Year,F4=Operator_Call_Sign),IF(ISNUMBER(MATCH(H4, 'AO assumptions'!$C$7:$C$15, 0)),H4,\"Yes\"),\"No\"),\"CIRC\")","v":"Yes"},{"$f":"IF(\n   AND(AL4=\"Yes\", ISNUMBER(MATCH(_xlfn.CONCAT(I4,\"-\",L4), Exemption_Routes_as_per_Article_5_3, 0))),\n   IF(\n      AND(\n         C4 >= INDEX(Exemption_start_date, MATCH(_xlfn.CONCAT(I4,\"-\",L4), Exemption_Routes_as_per_Article_5_3, 0)),\n         C4 <= INDEX(Exemption_end_date, MATCH(_xlfn.CONCAT(I4,\"-\",L4), Exemption_Routes_as_per_Article_5_3, 0))\n      ),\n      \"Yes\",\n      \"No\"\n   ),\n   \"No\"\n)","v":"No"},{"$f":"IF(AND(AJ4=\"Yes\",AL4=\"Yes\",AM4=\"No\"),\"Yes\",\"No\")","v":"Yes"},{"$f":"IFERROR(IF(AND(AN4=\"Yes\", VLOOKUP(I4, 'AO Reporting Template'!B:G, 6, FALSE) <> 0), \"Yes\", \"\"), \"\")","v":"Yes"},"",{"$f":"IFERROR(IF(AO4=\"\",\"\",INDEX(Taxi_Fuel_tonnes, MATCH($AP4, Unique_ID, 0))),\"\")","v":""},{"$f":"IFERROR(IF(AO4=\"\",\"\",INDEX(Trip_Fuel_tonnes, MATCH($AP4, Unique_ID, 0))),\"\")","v":""},{"$f":"IFERROR(IF(AO4=\"\",\"\",INDEX(Aviation_Fuel_Required__tonnes, MATCH($AP4, Unique_ID, 0))),\"\")","v":""},{"$f":"IFERROR(IF(AO4=\"\",\"\",INDEX(Block_Off_tonnes, MATCH($AP4, Unique_ID, 0))),\"\")","v":""},{"$f":"IFERROR(IF(AO4=\"\",\"\",INDEX(Block_On_tonnes, MATCH($AP4, Unique_ID, 0))),\"\")","v":""},{"$f":"IFERROR(IF(AO4=\"\",\"\",INDEX(Actual_Consumption_tonnes, MATCH($AP4, Unique_ID, 0))),\"\")","v":""},{"$f":"IFERROR(IF(AO4=\"\",\"\",AS4-AV4),\"Missing information\")","v":"Missing information"},{"$f":"IFERROR(IF(AO4=\"\",\"\",INDEX(Total_tanked_quantity_justified_tonnes, MATCH($AP4, Unique_ID, 0))),\"Missing information\")","v":"Missing information"},{"$f":"IF(AO4=\"Yes\", IF(AND(Monitoring_Data[[#This Row],[Null Values for Missing Information related to column H?\n(n)]]=\"No\",Monitoring_Data[[#This Row],[Null Values for Missing Information related to column H?\n(n-1)]]=\"No\"), AX4-AE4+AW4, \"Missing information\"), \"\")","v":"Missing information"},null,null,"Flight log, OFP",{"$f":"IF(\n   AND(\n      AN4=\"Yes\",\n      OR(\n         R4=\"\", R4=0, S4=\"\", S4=0, Q4=\"\", Q4=0,\n         IF(Monitoring_Data[[#This Row],[Taxi Fuel (tonnes)]]=INDEX(tblRawInput[Taxi Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n         IF(Monitoring_Data[[#This Row],[Trip Fuel (tonnes)]]=INDEX(tblRawInput[Trip Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n         IF(Monitoring_Data[[#This Row],[Volume (Litres)]]=INDEX(tblRawInput[Volume (Litres)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n         IF(Monitoring_Data[[#This Row],[Density]]=INDEX(tblRawInput[Density], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n IF(Monitoring_Data[[#This Row],[Actual Aviation Fuel Uplifted (tonnes)]]=INDEX(tblRawInput[Actual Aviation Fuel Uplifted (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE)\n      )\n   ),\n   \"Yes\",\n   \"No\"\n)","v":"No"},{"$f":"IF(\n   OR(\n      AE4=0,\n      IF(Monitoring_Data[[#This Row],[Contingency Fuel (tonnes)]]=INDEX(tblRawInput[Contingency Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Alternate Fuel (tonnes)]]=INDEX(tblRawInput[Alternate Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Final Reserve (tonnes)]]=INDEX(tblRawInput[Final Reserve (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Additional Fuel (tonnes)]]=INDEX(tblRawInput[Additional Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Discretionary Fuel (tonnes)]]=INDEX(tblRawInput[Discretionary Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Extra Fuel (tonnes)]]=INDEX(tblRawInput[Extra Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Fuel for other safety rules (tonnes)]]=INDEX(tblRawInput[Fuel for other safety rules (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE)\n   ),\n   \"Yes\",\n   \"No\"\n)","v":"No"},{"$f":"IF(\n   OR(\n      R4=0, S4=0, AG4=0, AH4=0,AI4=0,\n      IF(Monitoring_Data[[#This Row],[Taxi Fuel (tonnes)]]=INDEX(tblRawInput[Taxi Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Trip Fuel (tonnes)]]=INDEX(tblRawInput[Trip Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Block Off (tonnes)]]=INDEX(tblRawInput[Block Off (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Block On (tonnes)]]=INDEX(tblRawInput[Block On (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE)\n   ),\n   \"Yes\",\n   \"No\"\n)","v":"No"},{"$f":"IFERROR(\n    IF(AO4=\"\",\"\",\n        INDEX(ALT_CAL_fuel_safety_reasons, MATCH($AP4, Unique_ID, 0))\n    ),\n\"Yes\")","v":"Yes"},{"$f":"IFERROR(\n    IF(AO4=\"\",\"\",\n        INDEX(ALT_CAL_OFD, MATCH($AP4, Unique_ID, 0))\n    ),\n\"Yes\")","v":"Yes"},{"$f":"IF(AND(AO4=\"Yes\",BD4=\"Yes\"),\"Yes\",\"No\")","v":"No"},{"$f":"IF(AND(AO4=\"Yes\",OR(BF4=\"Yes\",BG4=\"Yes\",BL4=\"Yes\")),\"Yes\",\"No\")","v":"Yes"},{"$f":"IF(Monitoring_Data[[#This Row],[Previous Flight required?]]=\"Yes\",IF(AND(_xlfn.XLOOKUP(Monitoring_Data[[#This Row],[Previous Flight''s Unique ID]],Monitoring_Data[Unique ID],Monitoring_Data[Previous Flight required?],\"No\")=\"Yes\", Monitoring_Data[[#This Row],[Either null values or Alternative calculation used for OFD related information (n-1)]]<>\"Yes\"),\"Yes\",\"No\"),\"No\")","v":"No"},{"$f":"IF(AND(AO4=\"Yes\",AE4=0),\"Yes\",\"No\")","v":"No"},{"$f":"IF(AND(AO4=\"Yes\",OR(AQ4=\"\",AQ4=0,AR4=\"\",AR4=0,AT4=0,AT4=\"\",AU4=0,AU4=\"\",AX4=0, AS4=0,AV4=0)),\"Yes\",\"No\")","v":"Yes"},{"$f":"IFERROR(IF(ROW()-ROW(Monitoring_Data[#Headers])=1,\n    IF(AND(\n        Monitoring_Data[[#This Row],[AC registration]] = INDEX(Monitoring_Data[AC registration], ROW() - ROW(Monitoring_Data[#Headers]) + 1),\n        Monitoring_Data[[#This Row],[Destination Airport ICAO Code]] <> INDEX(Monitoring_Data[Departing Airport ICAO Code], ROW() - ROW(Monitoring_Data[#Headers]) + 1)\n    ),\n    \"Next flight is missing, check raw data\",\n    \" First Flight of A/C Reg\"),\nIF(Monitoring_Data[[#This Row],[AC registration]] <> INDEX(Monitoring_Data[AC registration], ROW() - ROW(Monitoring_Data[#Headers]) - 1), \"First Flight of A/C Reg\",\nIF(Monitoring_Data[[#This Row],[AC registration]] <> INDEX(Monitoring_Data[AC registration], ROW() - ROW(Monitoring_Data[#Headers]) + 1), \"Last Flight of A/C Reg\",\nIF(Monitoring_Data[[#This Row],[Destination Airport ICAO Code]] = INDEX(Monitoring_Data[Departing Airport ICAO Code], ROW() - ROW(Monitoring_Data[#Headers]) + 1), \"\",\n\"Next flight is missing, check raw data\")))),\"\")","v":" First Flight of A/C Reg"},{"$f":"IF(AND(Monitoring_Data[[#This Row],[ReFuel Reportable]]=\"Yes\",Monitoring_Data[[#This Row],[Actual Aviation Fuel Uplifted (tonnes)]]=0), \"Fuel uplift is null\", \"\")","v":""}]
["LFKFLFLLABCD457910.113888888888889",1,"2025-05-14","ABCD","123",null,null,null,"LFKF",{"$f":"IFERROR(INDEX(Union_Airports_name,MATCH(Monitoring_Data[[#This Row],[Departing Airport ICAO Code]],Union_Airports_icao_code,0),1),\"\")","v":"Figari-Sud Corse"},{"$f":"IFERROR(INDEX(Union_Airports_Country,MATCH(Monitoring_Data[[#This Row],[Departing Airport ICAO Code]],Union_Airports_icao_code,0),1),\"\")","v":"France"},"LFLL",{"$f":"IFERROR(INDEX(Union_Airports_name,MATCH(L5,Union_Airports_icao_code,0),1),\"\")","v":"Lyon"},{"$f":"IFERROR(INDEX(Union_Airports_Country,MATCH(L5,Union_Airports_icao_code,0),1),\"\")","v":"France"},"02:44:00","05:51:00",{"$f":"tblRawInput[[#This Row],[Block Time (hrs)]]","v":3.1166666666666663},0.2,7.4779999999999998,7.6779999999999999,5462,0.8,4.3696000000000002,0.374,0.81200000000000006,1.1419999999999999,0,0,0.44600000000000001,0,2.774,0,10.46,3.28,7.1800000000000015,{"$f":"IF(Reporting_Year=2024,IFERROR(INDEX(Union_Airports_Scope_2024,MATCH(I5,Union_Airports_icao_code,0),1),\"\"),IFERROR(INDEX(Union_Airports_Scope_2025,MATCH(I5,Union_Airports_icao_code,0),1),\"\"))","v":"Yes"},{"$f":"IF(Reporting_Year=2024,IFERROR(INDEX(Union_Airports_Scope_2024,MATCH(L5,Union_Airports_icao_code,0),1),\"\"),IFERROR(INDEX(Union_Airports_Scope_2025,MATCH(L5,Union_Airports_icao_code,0),1),\"\"))","v":"Yes"},{"$f":"IF(I5<>L5,IF(AND(YEAR(C5)=Reporting_Year,F5=Operator_Call_Sign),IF(ISNUMBER(MATCH(H5, 'AO assumptions'!$C$7:$C$15, 0)),H5,\"Yes\"),\"No\"),\"CIRC\")","v":"Yes"},{"$f":"IF(\n   AND(AL5=\"Yes\", ISNUMBER(MATCH(_xlfn.CONCAT(I5,\"-\",L5), Exemption_Routes_as_per_Article_5_3, 0))),\n   IF(\n      AND(\n         C5 >= INDEX(Exemption_start_date, MATCH(_xlfn.CONCAT(I5,\"-\",L5), Exemption_Routes_as_per_Article_5_3, 0)),\n         C5 <= INDEX(Exemption_end_date, MATCH(_xlfn.CONCAT(I5,\"-\",L5), Exemption_Routes_as_per_Article_5_3, 0))\n      ),\n      \"Yes\",\n      \"No\"\n   ),\n   \"No\"\n)","v":"No"},"Yes",{"$f":"IFERROR(IF(AND(AN5=\"Yes\", VLOOKUP(I5, 'AO Reporting Template'!B:G, 6, FALSE) <> 0), \"Yes\", \"\"), \"\")","v":"Yes"},"LIBDLFKFABCD457900.113888888888889",{"$f":"IFERROR(IF(AO5=\"\",\"\",INDEX(Taxi_Fuel_tonnes, MATCH($AP5, Unique_ID, 0))),\"\")","v":0.2},{"$f":"IFERROR(IF(AO5=\"\",\"\",INDEX(Trip_Fuel_tonnes, MATCH($AP5, Unique_ID, 0))),\"\")","v":7.4779999999999998},{"$f":"IFERROR(IF(AO5=\"\",\"\",INDEX(Aviation_Fuel_Required__tonnes, MATCH($AP5, Unique_ID, 0))),\"\")","v":7.6779999999999999},{"$f":"IFERROR(IF(AO5=\"\",\"\",INDEX(Block_Off_tonnes, MATCH($AP5, Unique_ID, 0))),\"\")","v":10.46},{"$f":"IFERROR(IF(AO5=\"\",\"\",INDEX(Block_On_tonnes, MATCH($AP5, Unique_ID, 0))),\"\")","v":3.28},{"$f":"IFERROR(IF(AO5=\"\",\"\",INDEX(Actual_Consumption_tonnes, MATCH($AP5, Unique_ID, 0))),\"\")","v":7.1800000000000015},0.49799999999999844,{"$f":"IFERROR(IF(AO5=\"\",\"\",INDEX(Total_tanked_quantity_justified_tonnes, MATCH($AP5, Unique_ID, 0))),\"Missing information\")","v":2.774},{"$f":"IF(AO5=\"Yes\", IF(AND(Monitoring_Data[[#This Row],[Null Values for Missing Information related to column H?\n(n)]]=\"No\",Monitoring_Data[[#This Row],[Null Values for Missing Information related to column H?\n(n-1)]]=\"No\"), AX5-AE5+AW5, \"Missing information\"), \"\")","v":0.49799999999999844},null,null,"Flight log, OFP",{"$f":"IF(\n   AND(\n      AN5=\"Yes\",\n      OR(\n         R5=\"\", R5=0, S5=\"\", S5=0, Q5=\"\", Q5=0,\n         IF(Monitoring_Data[[#This Row],[Taxi Fuel (tonnes)]]=INDEX(tblRawInput[Taxi Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n         IF(Monitoring_Data[[#This Row],[Trip Fuel (tonnes)]]=INDEX(tblRawInput[Trip Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n         IF(Monitoring_Data[[#This Row],[Volume (Litres)]]=INDEX(tblRawInput[Volume (Litres)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n         IF(Monitoring_Data[[#This Row],[Density]]=INDEX(tblRawInput[Density], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n IF(Monitoring_Data[[#This Row],[Actual Aviation Fuel Uplifted (tonnes)]]=INDEX(tblRawInput[Actual Aviation Fuel Uplifted (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE)\n      )\n   ),\n   \"Yes\",\n   \"No\"\n)","v":"No"},{"$f":"IF(\n   OR(\n      AE5=0,\n      IF(Monitoring_Data[[#This Row],[Contingency Fuel (tonnes)]]=INDEX(tblRawInput[Contingency Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Alternate Fuel (tonnes)]]=INDEX(tblRawInput[Alternate Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Final Reserve (tonnes)]]=INDEX(tblRawInput[Final Reserve (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Additional Fuel (tonnes)]]=INDEX(tblRawInput[Additional Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Discretionary Fuel (tonnes)]]=INDEX(tblRawInput[Discretionary Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Extra Fuel (tonnes)]]=INDEX(tblRawInput[Extra Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Fuel for other safety rules (tonnes)]]=INDEX(tblRawInput[Fuel for other safety rules (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE)\n   ),\n   \"Yes\",\n   \"No\"\n)","v":"No"},{"$f":"IF(\n   OR(\n      R5=0, S5=0, AG5=0, AH5=0,AI5=0,\n      IF(Monitoring_Data[[#This Row],[Taxi Fuel (tonnes)]]=INDEX(tblRawInput[Taxi Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Trip Fuel (tonnes)]]=INDEX(tblRawInput[Trip Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Block Off (tonnes)]]=INDEX(tblRawInput[Block Off (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Block On (tonnes)]]=INDEX(tblRawInput[Block On (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE)\n   ),\n   \"Yes\",\n   \"No\"\n)","v":"No"},{"$f":"IFERROR(\n    IF(AO5=\"\",\"\",\n        INDEX(ALT_CAL_fuel_safety_reasons, MATCH($AP5, Unique_ID, 0))\n    ),\n\"Yes\")","v":"No"},{"$f":"IFERROR(\n    IF(AO5=\"\",\"\",\n        INDEX(ALT_CAL_OFD, MATCH($AP5, Unique_ID, 0))\n    ),\n\"Yes\")","v":"No"},"No","No",{"$f":"IF(Monitoring_Data[[#This Row],[Previous Flight required?]]=\"Yes\",IF(AND(_xlfn.XLOOKUP(Monitoring_Data[[#This Row],[Previous Flight''s Unique ID]],Monitoring_Data[Unique ID],Monitoring_Data[Previous Flight required?],\"No\")=\"Yes\", Monitoring_Data[[#This Row],[Either null values or Alternative calculation used for OFD related information (n-1)]]<>\"Yes\"),\"Yes\",\"No\"),\"No\")","v":"Yes"},"No","No",{"$f":"IFERROR(IF(ROW()-ROW(Monitoring_Data[#Headers])=1,\n    IF(AND(\n        Monitoring_Data[[#This Row],[AC registration]] = INDEX(Monitoring_Data[AC registration], ROW() - ROW(Monitoring_Data[#Headers]) + 1),\n        Monitoring_Data[[#This Row],[Destination Airport ICAO Code]] <> INDEX(Monitoring_Data[Departing Airport ICAO Code], ROW() - ROW(Monitoring_Data[#Headers]) + 1)\n    ),\n    \"Next flight is missing, check raw data\",\n    \" First Flight of A/C Reg\"),\nIF(Monitoring_Data[[#This Row],[AC registration]] <> INDEX(Monitoring_Data[AC registration], ROW() - ROW(Monitoring_Data[#Headers]) - 1), \"First Flight of A/C Reg\",\nIF(Monitoring_Data[[#This Row],[AC registration]] <> INDEX(Monitoring_Data[AC registration], ROW() - ROW(Monitoring_Data[#Headers]) + 1), \"Last Flight of A/C Reg\",\nIF(Monitoring_Data[[#This Row],[Destination Airport ICAO Code]] = INDEX(Monitoring_Data[Departing Airport ICAO Code], ROW() - ROW(Monitoring_Data[#Headers]) + 1), \"\",\n\"Next flight is missing, check raw data\")))),\"\")","v":""},{"$f":"IF(AND(Monitoring_Data[[#This Row],[ReFuel Reportable]]=\"Yes\",Monitoring_Data[[#This Row],[Actual Aviation Fuel Uplifted (tonnes)]]=0), \"Fuel uplift is null\", \"\")","v":""}]
["LFLLLIBDABCD457920.114583333333333",3,"2025-05-15","ABCD","456",null,null,null,"LFLL",{"$f":"IFERROR(INDEX(Union_Airports_name,MATCH(Monitoring_Data[[#This Row],[Departing Airport ICAO Code]],Union_Airports_icao_code,0),1),\"\")","v":"Lyon"},{"$f":"IFERROR(INDEX(Union_Airports_Country,MATCH(Monitoring_Data[[#This Row],[Departing Airport ICAO Code]],Union_Airports_icao_code,0),1),\"\")","v":"France"},"LIBD",{"$f":"IFERROR(INDEX(Union_Airports_name,MATCH(L6,Union_Airports_icao_code,0),1),\"\")","v":"Bari"},{"$f":"IFERROR(INDEX(Union_Airports_Country,MATCH(L6,Union_Airports_icao_code,0),1),\"\")","v":"Italy"},"02:45:00","05:52:00",{"$f":"tblRawInput[[#This Row],[Block Time (hrs)]]","v":3.1166666666666663},0.2,8,8.1999999999999993,5462,0.8,4.3696000000000002,0.374,0.81200000000000006,1.1419999999999999,0,0,0.44600000000000001,0,2.774,0,10.46,3.28,7.1800000000000015,{"$f":"IF(Reporting_Year=2024,IFERROR(INDEX(Union_Airports_Scope_2024,MATCH(I6,Union_Airports_icao_code,0),1),\"\"),IFERROR(INDEX(Union_Airports_Scope_2025,MATCH(I6,Union_Airports_icao_code,0),1),\"\"))","v":"Yes"},{"$f":"IF(Reporting_Year=2024,IFERROR(INDEX(Union_Airports_Scope_2024,MATCH(L6,Union_Airports_icao_code,0),1),\"\"),IFERROR(INDEX(Union_Airports_Scope_2025,MATCH(L6,Union_Airports_icao_code,0),1),\"\"))","v":"Yes"},{"$f":"IF(I6<>L6,IF(AND(YEAR(C6)=Reporting_Year,F6=Operator_Call_Sign),IF(ISNUMBER(MATCH(H6, 'AO assumptions'!$C$7:$C$15, 0)),H6,\"Yes\"),\"No\"),\"CIRC\")","v":"Yes"},{"$f":"IF(\n   AND(AL6=\"Yes\", ISNUMBER(MATCH(_xlfn.CONCAT(I6,\"-\",L6), Exemption_Routes_as_per_Article_5_3, 0))),\n   IF(\n      AND(\n         C6 >= INDEX(Exemption_start_date, MATCH(_xlfn.CONCAT(I6,\"-\",L6), Exemption_Routes_as_per_Article_5_3, 0)),\n         C6 <= INDEX(Exemption_end_date, MATCH(_xlfn.CONCAT(I6,\"-\",L6), Exemption_Routes_as_per_Article_5_3, 0))\n      ),\n      \"Yes\",\n      \"No\"\n   ),\n   \"No\"\n)","v":"No"},"Yes",{"$f":"IFERROR(IF(AND(AN6=\"Yes\", VLOOKUP(I6, 'AO Reporting Template'!B:G, 6, FALSE) <> 0), \"Yes\", \"\"), \"\")","v":"Yes"},"LFKFLFLLABCD457910.113888888888889",{"$f":"IFERROR(IF(AO6=\"\",\"\",INDEX(Taxi_Fuel_tonnes, MATCH($AP6, Unique_ID, 0))),\"\")","v":0.2},{"$f":"IFERROR(IF(AO6=\"\",\"\",INDEX(Trip_Fuel_tonnes, MATCH($AP6, Unique_ID, 0))),\"\")","v":7.4779999999999998},{"$f":"IFERROR(IF(AO6=\"\",\"\",INDEX(Aviation_Fuel_Required__tonnes, MATCH($AP6, Unique_ID, 0))),\"\")","v":7.6779999999999999},{"$f":"IFERROR(IF(AO6=\"\",\"\",INDEX(Block_Off_tonnes, MATCH($AP6, Unique_ID, 0))),\"\")","v":10.46},{"$f":"IFERROR(IF(AO6=\"\",\"\",INDEX(Block_On_tonnes, MATCH($AP6, Unique_ID, 0))),\"\")","v":3.28},{"$f":"IFERROR(IF(AO6=\"\",\"\",INDEX(Actual_Consumption_tonnes, MATCH($AP6, Unique_ID, 0))),\"\")","v":7.1800000000000015},0.49799999999999844,{"$f":"IFERROR(IF(AO6=\"\",\"\",INDEX(Total_tanked_quantity_justified_tonnes, MATCH($AP6, Unique_ID, 0))),\"Missing information\")","v":2.774},{"$f":"IF(AO6=\"Yes\", IF(AND(Monitoring_Data[[#This Row],[Null Values for Missing Information related to column H?\n(n)]]=\"No\",Monitoring_Data[[#This Row],[Null Values for Missing Information related to column H?\n(n-1)]]=\"No\"), AX6-AE6+AW6, \"Missing information\"), \"\")","v":0.49799999999999844},null,null,"Flight log, OFP",{"$f":"IF(\n   AND(\n      AN6=\"Yes\",\n      OR(\n         R6=\"\", R6=0, S6=\"\", S6=0, Q6=\"\", Q6=0,\n         IF(Monitoring_Data[[#This Row],[Taxi Fuel (tonnes)]]=INDEX(tblRawInput[Taxi Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n         IF(Monitoring_Data[[#This Row],[Trip Fuel (tonnes)]]=INDEX(tblRawInput[Trip Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n         IF(Monitoring_Data[[#This Row],[Volume (Litres)]]=INDEX(tblRawInput[Volume (Litres)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n         IF(Monitoring_Data[[#This Row],[Density]]=INDEX(tblRawInput[Density], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n IF(Monitoring_Data[[#This Row],[Actual Aviation Fuel Uplifted (tonnes)]]=INDEX(tblRawInput[Actual Aviation Fuel Uplifted (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE)\n      )\n   ),\n   \"Yes\",\n   \"No\"\n)","v":"No"},{"$f":"IF(\n   OR(\n      AE6=0,\n      IF(Monitoring_Data[[#This Row],[Contingency Fuel (tonnes)]]=INDEX(tblRawInput[Contingency Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Alternate Fuel (tonnes)]]=INDEX(tblRawInput[Alternate Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Final Reserve (tonnes)]]=INDEX(tblRawInput[Final Reserve (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Additional Fuel (tonnes)]]=INDEX(tblRawInput[Additional Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Discretionary Fuel (tonnes)]]=INDEX(tblRawInput[Discretionary Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Extra Fuel (tonnes)]]=INDEX(tblRawInput[Extra Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Fuel for other safety rules (tonnes)]]=INDEX(tblRawInput[Fuel for other safety rules (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE)\n   ),\n   \"Yes\",\n   \"No\"\n)","v":"No"},{"$f":"IF(\n   OR(\n      R6=0, S6=0, AG6=0, AH6=0,AI6=0,\n      IF(Monitoring_Data[[#This Row],[Taxi Fuel (tonnes)]]=INDEX(tblRawInput[Taxi Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Trip Fuel (tonnes)]]=INDEX(tblRawInput[Trip Fuel (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Block Off (tonnes)]]=INDEX(tblRawInput[Block Off (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE),\n      IF(Monitoring_Data[[#This Row],[Block On (tonnes)]]=INDEX(tblRawInput[Block On (tonnes)], MATCH(Monitoring_Data[[#This Row],[Unique ID]], tblRawInput[Unique ID], 0)), FALSE, TRUE)\n   ),\n   \"Yes\",\n   \"No\"\n)","v":"No"},{"$f":"IFERROR(\n    IF(AO6=\"\",\"\",\n        INDEX(ALT_CAL_fuel_safety_reasons, MATCH($AP6, Unique_ID, 0))\n    ),\n\"Yes\")","v":"No"},{"$f":"IFERROR(\n    IF(AO6=\"\",\"\",\n        INDEX(ALT_CAL_OFD, MATCH($AP6, Unique_ID, 0))\n    ),\n\"Yes\")","v":"No"},"No","No",{"$f":"IF(Monitoring_Data[[#This Row],[Previous Flight required?]]=\"Yes\",IF(AND(_xlfn.XLOOKUP(Monitoring_Data[[#This Row],[Previous Flight''s Unique ID]],Monitoring_Data[Unique ID],Monitoring_Data[Previous Flight required?],\"No\")=\"Yes\", Monitoring_Data[[#This Row],[Either null values or Alternative calculation used for OFD related information (n-1)]]<>\"Yes\"),\"Yes\",\"No\"),\"No\")","v":"Yes"},"No","No",{"$f":"IFERROR(IF(ROW()-ROW(Monitoring_Data[#Headers])=1,\n    IF(AND(\n        Monitoring_Data[[#This Row],[AC registration]] = INDEX(Monitoring_Data[AC registration], ROW() - ROW(Monitoring_Data[#Headers]) + 1),\n        Monitoring_Data[[#This Row],[Destination Airport ICAO Code]] <> INDEX(Monitoring_Data[Departing Airport ICAO Code], ROW() - ROW(Monitoring_Data[#Headers]) + 1)\n    ),\n    \"Next flight is missing, check raw data\",\n    \" First Flight of A/C Reg\"),\nIF(Monitoring_Data[[#This Row],[AC registration]] <> INDEX(Monitoring_Data[AC registration], ROW() - ROW(Monitoring_Data[#Headers]) - 1), \"First Flight of A/C Reg\",\nIF(Monitoring_Data[[#This Row],[AC registration]] <> INDEX(Monitoring_Data[AC registration], ROW() - ROW(Monitoring_Data[#Headers]) + 1), \"Last Flight of A/C Reg\",\nIF(Monitoring_Data[[#This Row],[Destination Airport ICAO Code]] = INDEX(Monitoring_Data[Departing Airport ICAO Code], ROW() - ROW(Monitoring_Data[#Headers]) + 1), \"\",\n\"Next flight is missing, check raw data\")))),\"\")","v":""},{"$f":"IF(AND(Monitoring_Data[[#This Row],[ReFuel Reportable]]=\"Yes\",Monitoring_Data[[#This Row],[Actual Aviation Fuel Uplifted (tonnes)]]=0), \"Fuel uplift is null\", \"\")","v":""}]

{"sheet":"AO Reporting Template","index":8,"n_rows":9,"n_cols":8,"rows_kept":9,"cut":false,"hidden":false,"merged":[[1,1,3,6]]}
[]
[null,"Press the above button to generate the report.\nCopy paste the content of the table below as value in the ReFuelEU Aviation reporting template.\n\nWarning: If data is copy pasted in the ReFuel EU Aviation Template for aircraft operators, the formatting rules and formulas might not work anymore, please verify they are applied correctly."]
[]
[]
[]
["Union Airport Name","ICAO Code of Union Airport","Total flights operated departing from the Union Airport\n(Nº flights)","Total flights hours operated departing from the Union Airport\n(Nº hours)","Yearly aviation fuel required \n(tonnes)","Yearly actual aviation fuel uplifted \n(tonnes)","Yearly non-tanked quantity \n(tonnes)","Yearly tanked quantity for fuel safety rules\n (tonnes)"]
[{"$f":"INDEX(Union_Airports_name, MATCH($B7, Union_Airports_icao_code, 0))","v":"Bari"},{"$f":"_xlfn.UNIQUE(_xlfn._xlws.FILTER(Departing_Airport_ICAO_Code,ReFuel_Reportable=\"Yes\"))","v":"LIBD"},{"$f":"COUNTIFS(Departing_Airport_ICAO_Code, 'AO Reporting Template'!B7, ReFuel_Reportable, \"Yes\")","v":1},{"$f":"SUMIFS(Block_Time__hrs, Departing_Airport_ICAO_Code, 'AO Reporting Template'!B7, ReFuel_Reportable, \"Yes\")","v":3.1166666666666663},{"$f":"SUMIFS(Aviation_Fuel_Required__tonnes, Departing_Airport_ICAO_Code, 'AO Reporting Template'!B7, ReFuel_Reportable, \"Yes\")","v":7.6779999999999999},{"$f":"SUMIFS(Actual_Aviation_Fuel_Uplifted__tonnes, Departing_Airport_ICAO_Code, 'AO Reporting Template'!B7, ReFuel_Reportable, \"Yes\")","v":4.3696000000000002},{"$f":"IF(F7>=0.9*E7,0,0.9*E7-F7)","v":2.5405999999999995},{"$f":"IF(G7<>0, IF(COUNTIFS(Departing_Airport_ICAO_Code, 'AO Reporting Template'!B7, Tanked_fuel_for_Safety_Reason___Column_H, \"Missing information\")>0, 0, SUMIFS(Tanked_fuel_for_Safety_Reason___Column_H, Departing_Airport_ICAO_Code, 'AO Reporting Template'!B7, ReFuel_Reportable, \"Yes\")), 0)","v":0}]
["Figari-Sud Corse","LFKF",{"$f":"COUNTIFS(Departing_Airport_ICAO_Code, 'AO Reporting Template'!B8, ReFuel_Reportable, \"Yes\")","v":1},{"$f":"SUMIFS(Block_Time__hrs, Departing_Airport_ICAO_Code, 'AO Reporting Template'!B8, ReFuel_Reportable, \"Yes\")","v":3.1166666666666663},{"$f":"SUMIFS(Aviation_Fuel_Required__tonnes, Departing_Airport_ICAO_Code, 'AO Reporting Template'!B8, ReFuel_Reportable, \"Yes\")","v":7.6779999999999999},{"$f":"SUMIFS(Actual_Aviation_Fuel_Uplifted__tonnes, Departing_Airport_ICAO_Code, 'AO Reporting Template'!B8, ReFuel_Reportable, \"Yes\")","v":4.3696000000000002},{"$f":"IF(F8>=0.9*E8,0,0.9*E8-F8)","v":2.5405999999999995},{"$f":"IF(G8<>0, IF(COUNTIFS(Departing_Airport_ICAO_Code, 'AO Reporting Template'!B8, Tanked_fuel_for_Safety_Reason___Column_H, \"Missing information\")>0, 0, SUMIFS(Tanked_fuel_for_Safety_Reason___Column_H, Departing_Airport_ICAO_Code, 'AO Reporting Template'!B8, ReFuel_Reportable, \"Yes\")), 0)","v":0.49799999999999844}]
["Lyon","LFLL",{"$f":"COUNTIFS(Departing_Airport_ICAO_Code, 'AO Reporting Template'!B9, ReFuel_Reportable, \"Yes\")","v":1},{"$f":"SUMIFS(Block_Time__hrs, Departing_Airport_ICAO_Code, 'AO Reporting Template'!B9, ReFuel_Reportable, \"Yes\")","v":3.1166666666666663},{"$f":"SUMIFS(Aviation_Fuel_Required__tonnes, Departing_Airport_ICAO_Code, 'AO Reporting Template'!B9, ReFuel_Reportable, \"Yes\")","v":8.1999999999999993},{"$f":"SUMIFS(Actual_Aviation_Fuel_Uplifted__tonnes, Departing_Airport_ICAO_Code, 'AO Reporting Template'!B9, ReFuel_Reportable, \"Yes\")","v":4.3696000000000002},3.0103999999999997,{"$f":"IF(G9<>0, IF(COUNTIFS(Departing_Airport_ICAO_Code, 'AO Reporting Template'!B9, Tanked_fuel_for_Safety_Reason___Column_H, \"Missing information\")>0, 0, SUMIFS(Tanked_fuel_for_Safety_Reason___Column_H, Departing_Airport_ICAO_Code, 'AO Reporting Template'!B9, ReFuel_Reportable, \"Yes\")), 0)","v":0.49799999999999844}]

{"sheet":"Data Gaps","index":9,"n_rows":4,"n_cols":4,"rows_kept":4,"cut":false,"hidden":false,"merged":[]}
["Percentage Of Data Gaps",{"$f":"COUNTIF(ALT_CAL_Datagap,\"Yes\")/COUNTIF(ReFuel_Reportable,\"Yes\")","v":0}]
["Percentage Of Missing information",{"$f":"(COUNTIF(Monitoring_Data[Flight to be considered for threshold missing information? (n)],\"Yes\")+COUNTIFS(Monitoring_Data[Flight to be considered for threshold missing information? (n-1)],\"Yes\",Monitoring_Data[Flight (n-1) already counted as flight (n) in scope],\"No\"))\n/\n(COUNTIF(Monitoring_Data[Previous Flight required?],\"Yes\")*2-COUNTIF(Monitoring_Data[Flight (n-1) already counted as flight (n) in scope],\"Yes\"))","v":0.25}]
[]
["Number of Flights Impacted","Type of data missing","Reason","Mitigation Process "]

{"sheet":"Alternative Calculation","index":10,"n_rows":3,"n_cols":21,"rows_kept":3,"cut":false,"hidden":false,"merged":[[0,1,0,12]]}
[null,"This tab is intended solely for internal record-keeping of flights where alternative methods were applied.\n If the Update Monitoring Tab button is pressed after overwriting alternative calculated values in the Monitoring tab, those values will be replaced with data from the Raw Input tab. Therefore, this tab can be used to maintain a record of alternative calculations in case overwritten values are lost due to an update."]
["Unique ID","Serial No","ICAO Call sign","Departing Airport ICAO Code","Destination Airport ICAO Code","Block Time (hrs)","Taxi Fuel (tonnes)","Trip Fuel (tonnes)","Volume (Litres)","Density","Actual Aviation Fuel Uplifted (tonnes)","Contingency Fuel (tonnes)","Alternate Fuel (tonnes)","Final Reserve (tonnes)","Additional Fuel (tonnes)","Discretionary Fuel (tonnes)","Extra Fuel (tonnes)","Fuel for other safety rules (tonnes)","Economic tankering category in the flight plan","Block Off (tonnes)","Block On (tonnes)"]
[{"$f":"_xlfn.UNIQUE(\n    _xlfn._xlws.FILTER(\n        'Monitoring Data'!$A$3:$A$99997,\n        (('Monitoring Data'!$BC$3:$BC$99997=\"Yes\") +\n         ('Monitoring Data'!$BD$3:$BD$99997=\"Yes\") +\n         ('Monitoring Data'!$BE$3:$BE$99997=\"Yes\") +\n         ('Monitoring Data'!$BF$3:$BF$99997=\"Yes\") +\n         ('Monitoring Data'!$BG$3:$BG$99997=\"Yes\")) > 0\n    )\n)","v":"LIBDLFKFABCD457900.113888888888889"},{"$f":"IFERROR(INDEX('Monitoring Data'!B:B, MATCH(_xlfn.ANCHORARRAY(A3), 'Monitoring Data'!A:A, 0)), \"\")","v":2},{"$f":"IFERROR(INDEX('Monitoring Data'!F:F, MATCH(_xlfn.ANCHORARRAY(A3), 'Monitoring Data'!A:A, 0)), \"\")","v":0},{"$f":"IFERROR(INDEX('Monitoring Data'!I:I, MATCH(_xlfn.ANCHORARRAY(A3), 'Monitoring Data'!A:A, 0)), \"\")","v":"LIBD"},{"$f":"IFERROR(INDEX('Monitoring Data'!L:L, MATCH(_xlfn.ANCHORARRAY(A3), 'Monitoring Data'!A:A, 0)), \"\")","v":"LFKF"}]

{"sheet":"Union Airports (Lkups)","index":11,"n_rows":156,"n_cols":9,"rows_kept":156,"cut":false,"hidden":false,"merged":[[1,8,8,9]]}
["airport_iata_code","airport_icao_code","airport_name","city","country","union_airport_2024","union_airport_2025"]
["BRU","EBBR","Brussels-National","Brussels","Belgium","Yes","Yes",null,"Please ensure that the latest version of the list of Union airport is used, corresponding to the reporting period for which the tool is intended to be utilized by the operator. The list is published on the European Comission's website: https://transport.ec.europa.eu/transport-modes/air/environment/refueleu-aviation_en"]
["CRL","EBCI","Charleroi/Brussels South","Charleroi","Belgium","Yes","Yes"]
["LGG","EBLG","Liège/Liege (Civil)","Liege","Belgium","Yes","Yes"]
["BER","EDDB","Berlin Brandenburg","Berlin","Germany","Yes","Yes"]
["DRS","EDDC","Dresden","Dresden","Germany","Yes","Yes"]
["FRA","EDDF","Frankfurt am Main","Frankfurt","Germany","Yes","Yes"]
["FMO","EDDG","Munster/Osnabruck","Munster","Germany","Yes","Yes"]
["HAM","EDDH","Hamburg","Hamburg","Germany","Yes","Yes"]
["CGN","EDDK","Cologne-Bonn","Cologne","Germany","Yes","Yes"]
["DUS","EDDL","Dusseldorf","Duesseldorf","Germany","Yes","Yes"]
["MUC","EDDM","München","Munich","Germany","Yes","Yes"]
["NUE","EDDN","Nurnberg","Nuernberg","Germany","Yes","Yes"]
["LEJ","EDDP","Leipzig/Halle","Leipzig","Germany","Yes","Yes"]
["STR","EDDS","Stuttgart","Stuttgart","Germany","Yes","Yes"]
["HAJ","EDDV","Hannover","Hannover","Germany","Yes","Yes"]
["BRE","EDDW","Bremen","Bremen","Germany","Yes","Yes"]
["HHN","EDFH","Hahn","Hahn","Germany","Yes","Yes"]
["FMM","EDJA","Allgäu","Memmingen","Germany","Yes","Yes"]
["PAD","EDLP","Paderborn/ Lippstadt","Paderborn","Germany","No","Yes"]
["NRN","EDLV","Niederrhein","Weeze","Germany","Yes","Yes"]
["DTM","EDLW","Dortmund-Wickede","Dortmund","Germany","Yes","Yes"]
["FKB","EDSB","Karlsruhe/Baden-Baden","Karlsruhe/Baden-Baden","Germany","Yes","Yes"]
["TLL","EETN","Tallinn/Ulemiste","Tallinn-ulemiste International","Estonia","Yes","Yes"]
["HEL","EFHK","Helsinki Vantaa","Helsinki","Finland","Yes","Yes"]
["RVN","EFRO","Rovaniemi3","Rovaniemi","Finland","No","Yes"]
["AMS","EHAM","Amsterdam Schiphol","Amsterdam","Netherlands","Yes","Yes"]
["EIN","EHEH","Eindhoven","Eindhoven","Netherlands","Yes","Yes"]
["RTM","EHRD","Rotterdam","Rotterdam","Netherlands","Yes","Yes"]
["ORK","EICK","Cork","Cork","Ireland","Yes","Yes"]
["DUB","EIDW","Dublin","Dublin","Ireland","Yes","Yes"]
["NOC","EIKN","Ireland West","Knock","Ireland","No","Yes"]
["SNN","EINN","Shannon","Shannon","Ireland","Yes","Yes"]
["BLL","EKBI","Billund","Billund","Denmark","Yes","Yes"]
["CPH","EKCH","Kobenhavn/Kastrup","Copenhagen","Denmark","Yes","Yes"]
["AAL","EKYT","Aalborg","Aalborg","Denmark","Yes","Yes"]
["LUX","ELLX","Luxembourg","Luxembourg","Luxembourg","Yes","Yes"]
["GDN","EPGD","Gdańsk im. Lecha Wałęsy","Gdansk","Poland","Yes","Yes"]
["KRK","EPKK","Kraków-Balice","Krakow","Poland","Yes","Yes"]
["KTW","EPKT","Katowice-Pyrzowice","Katowice","Poland","Yes","Yes"]
["WMI","EPMO","Warszawa/Modlin","Warsaw","Poland","Yes","Yes"]
["POZ","EPPO","Poznań-Ławica","Poznan","Poland","Yes","Yes"]
["RZE","EPRZ","Rzeszów /Jasionka","Rzeszów","Poland","No","Yes"]
["WAW","EPWA","Lotnisko Chopina w Warszawie","Warsaw","Poland","Yes","Yes"]
["WRO","EPWR","Wrocław-Strachowice","Wroclaw","Poland","Yes","Yes"]
["GOT","ESGG","Göteborg/Landvetter","Gothenborg","Sweden","Yes","Yes"]
["MMX","ESMS","Malmö/Sturup","Malmö/Sturup","Sweden","Yes","Yes"]
["LLA","ESPA","Luleå/Kallax","Lulea","Sweden","Yes","Yes"]
["ARN","ESSA","Stockholm-Arlanda","Stockholm","Sweden","Yes","Yes"]
["BMA","ESSB","Stockholm/Bromma","Stockholm/Bromma","Sweden","Yes","Yes"]
["RIX","EVRA","Riga","Riga","Latvia","Yes","Yes"]
["KUN","EYKA","Kaunas","Kaunas","Lithuania","Yes","Yes"]
["VNO","EYVI","Vilnius","Vilnius","Lithuania","Yes","Yes"]
["BOJ","LBBG","Burgas","Bourgas","Bulgaria","Yes","Yes"]
["SOF","LBSF","Sofia","Sofia","Bulgaria","Yes","Yes"]
["VAR","LBWN","Varna","Varna","Bulgaria","Yes","Yes"]
["LCA","LCLK","Larnaka","Larnaca","Cyprus","Yes","Yes"]
["PFO","LCPH","Pafos","Paphos","Cyprus","Yes","Yes"]
["DBV","LDDU","Dubrovnik","Dubrovnik","Croatia","Yes","Yes"]
["SPU","LDSP","Split","Split","Croatia","Yes","Yes"]
["ZAG","LDZA","Zagreb","Zagreb","Croatia","Yes","Yes"]
["ZAD","LDZD","Zadar","Zadar","Croatia","Yes","Yes"]
["ALC","LEAL","Alicante","Alicante","Spain","Yes","Yes"]
["LEI","LEAM","Almería","Almería","Spain","No","No"]
["OVD","LEAS","Asturias","Aviles","Spain","Yes","Yes"]
["BIO","LEBB","Bilbao","Bilbao","Spain","Yes","Yes"]
["BCN","LEBL","Barcelona","Barcelona","Spain","Yes","Yes"]
["LCG","LECO","La Coruña","La Coruna","Spain","Yes","Yes"]
["GRO","LEGE","Girona/Costa Brava","Gerona","Spain","Yes","Yes"]
["GRX","LEGR","Granada","Granada","Spain","Yes","Yes"]
["IBZ","LEIB","Ibiza","Ibiza","Spain","Yes","Yes"]
["XRY","LEJR","Jerez","Jerez","Spain","Yes","Yes"]
["MAD","LEMD","Madrid/Barajas","Madrid","Spain","Yes","Yes"]
["AGP","LEMG","Málaga","Malaga","Spain","Yes","Yes"]
["MAH","LEMH","Menorca","Menorca","Spain","Yes","Yes"]
["RMU","LEMI","Murcia","Baicheng","Spain","Yes","Yes"]
["PMI","LEPA","Palma de Mallorca","Palma de Mallorca","Spain","Yes","Yes"]
["REU","LERS","Reus","Reus","Spain","Yes","Yes"]
["SCQ","LEST","Santiago","Santiago","Spain","Yes","Yes"]
["VLC","LEVC","Valencia","Valencia","Spain","Yes","Yes"]
["VGO","LEVX","Vigo","Vigo","Spain","Yes","Yes"]
["SDR","LEXJ","Santander","Santander","Spain","Yes","Yes"]
["ZAZ","LEZG","Zaragoza","Zaragoza","Spain","Yes","Yes"]
["SVQ","LEZL","Sevilla","Sevilla","Spain","Yes","Yes"]
["BOD","LFBD","Bordeaux-Merignac","Bordeaux","France","Yes","Yes"]
["TLS","LFBO","Toulouse-Blagnac","Toulouse","France","Yes","Yes"]
["BIQ","LFBZ","Biarritz","Biarritz-bayonne","France","Yes","Yes"]
["BIA","LFKB","Bastia-Poretta","Bastia","France","Yes","Yes"]
["FSC","LFKF","Figari-Sud Corse","Figari","France","Yes","Yes"]
["AJA","LFKJ","Ajaccio","Ajaccio","France","Yes","Yes"]
["LYS","LFLL","Lyon","Lyon","France","Yes","Yes"]
["MRS","LFML","Marseille Provence","Marseille","France","Yes","Yes"]
["NCE","LFMN","Nice-Côte d'Azur","Nice","France","Yes","Yes"]
["MPL","LFMT","Montpellier-Méditerranée","Montpellier","France","Yes","Yes"]
["BVA","LFOB","Beauvais-Tillé","Beauvais-Tillé","France","Yes","Yes"]
["LBG","LFPB","Paris/Le Bourget","Paris (Le Bourget)","France","No","Yes"]
["CDG","LFPG","Paris Charles de Gaulle","Paris","France","Yes","Yes"]
["ORY","LFPO","Paris Orly","Paris","France","Yes","Yes"]
["LIL","LFQQ","Lille","Lille","France","Yes","Yes"]
["BES","LFRB","Brest /Bretagne","Brest","France","No","Yes"]
["NTE","LFRS","Nantes Atlantique","Nantes","France","Yes","Yes"]
["BSL","LFSB","EuroAirport Basel Mulhouse Freiburg","EuroAirport Basel Mulhouse Freiburg","France","Yes","Yes"]
["SXB","LFST","Strasbourg","Strasbourg","France","Yes","Yes"]
["ATH","LGAV","Athens International","Athens","Greece","Yes","Yes"]
["HER","LGIR","Iraklion","Heraklion","Greece","Yes","Yes"]
["EFL","LGKF","Kefallinia","Keffallinia","Greece","Yes","Yes"]
["KGS","LGKO","Kos","Kos","Greece","Yes","Yes"]
["CFU","LGKR","Kerkira","Kerkyra/corfu","Greece","Yes","Yes"]
["JMK","LGMK","Mikonos","Mykonos","Greece","Yes","Yes"]
["PVK","LGPZ","Preveza/Aktion  National","Preveza","Greece","No","Yes"]
["RHO","LGRP","Rodos","Rhodos","Greece","Yes","Yes"]
["CHQ","LGSA","Chania","Chania","Greece","Yes","Yes"]
["JTR","LGSR","Santorini","Thira","Greece","Yes","Yes"]
["SKG","LGTS","Thessaloniki","Thessaloniki","Greece","Yes","Yes"]
["ZTH","LGZA","Zakinthos","Zakynthos","Greece","Yes","Yes"]
["BUD","LHBP","Budapest Ferenc Liszt International","Budapest","Hungary","Yes","Yes"]
["BRI","LIBD","Bari","Bari","Italy","Yes","Yes"]
["PSR","LIBP","Pescara","Pescara","Italy","No","No"]
["BDS","LIBR","Brindisi","Brindisi","Italy","Yes","Yes"]
["SUF","LICA","Lamezia Terme","Lamezia","Italy","Yes","Yes"]
["CTA","LICC","Catania-Fontanarossa","Catania","Italy","Yes","Yes"]
["PMO","LICJ","Palermo","Palermo","Italy","Yes","Yes"]
["TPS","LICT","Trapani-Birgi","Trapani","Italy","Yes","Yes"]
["AHO","LIEA","Alghero","Alghero","Italy","Yes","Yes"]
["CAG","LIEE","Elmas","Cagliari","Italy","Yes","Yes"]
["OLB","LIEO","Olbia","Olbia","Italy","Yes","Yes"]
["MXP","LIMC","Milano Malpensa","Milano","Italy","Yes","Yes"]
["BGY","LIME","Milan Bergamo","Milan Bergamo","Italy","Yes","Yes"]
["TRN","LIMF","Torino","Torino","Italy","Yes","Yes"]
["GOA","LIMJ","Genova","Genoa","Italy","Yes","Yes"]
["LIN","LIML","Milano Linate","Milan","Italy","Yes","Yes"]
["BLQ","LIPE","Bologna","Bologna","Italy","Yes","Yes"]
["TSF","LIPH","Treviso","Treviso","Italy","Yes","Yes"]
["TRS","LIPQ","Trieste/Ronchi dei Legionari","Trieste","Italy","No","Yes"]
["VRN","LIPX","Verona Villafranca","Villafranca","Italy","Yes","Yes"]
["VCE","LIPZ","Venezia","Venice","Italy","Yes","Yes"]
["CIA","LIRA","Ciampino","Ciampino","Italy","Yes","Yes"]
["FCO","LIRF","Roma Fiumicino","Rome","Italy","Yes","Yes"]
["NAP","LIRN","Napoli-Capodichino","Naples","Italy","Yes","Yes"]
["PSA","LIRP","Pisa","Pisa","Italy","Yes","Yes"]
["FLR","LIRQ","Firenze-Peretola","Florence","Italy","Yes","Yes"]
["LJU","LJLJ","Ljubljana","Ljubljana","Slovenia","Yes","Yes"]
["PRG","LKPR","Ruzyne","Prague","Czechia","Yes","Yes"]
["MLA","LMML","Luqa","Malta","Malta","Yes","Yes"]
["GRZ","LOWG","Graz","Graz","Austria","No","Yes"]
["INN","LOWI","Innsbruck","Innsbruck","Austria","No","Yes"]
["SZG","LOWS","Salzburg","Salzburg","Austria","Yes","Yes"]
["VIE","LOWW","Wien-Schwechat","Vienna","Austria","Yes","Yes"]
["FAO","LPFR","Faro","Faro","Portugal","Yes","Yes"]
["OPO","LPPR","Porto","Porto","Portugal","Yes","Yes"]
["LIS","LPPT","Lisboa","Lisbon","Portugal","Yes","Yes"]
["CLJ","LRCL","Cluj Napoca Someșeni","Cluj-napoca","Romania","Yes","Yes"]
["IAS","LRIA","Iași/Iași","Iasi","Romania","Yes","Yes"]
["OTP","LROP","București/Otopeni","Bucharest","Romania","Yes","Yes"]
["TSR","LRTR","Timișoara/Giarmata","Timisoara","Romania","Yes","Yes"]
["BTS","LZIB","Bratislava","Bratislava","Slovakia","Yes","Yes"]