Abaixo está uma instrução que descreve uma tarefa de geração de SQL, combinada com uma entrada que fornece mais contexto sobre os esquemas de tabela disponíveis. Escreva o código SQL que responda adequadamente à solicitação
 ###Instrução: Error code: 429 - {'error': {'message': 'You exceeded your current quota, please check your plan and billing details. For more information on this error, read the docs: https://platform.openai.com/docs/guides/error-codes/api-errors.', 'type': 'insufficient_quota', 'param': None, 'code': 'insufficient_quota'}}
 ###Tabelas: 
CREATE TABLE donors_ext (id INT, name VARCHAR(50), donation_amount DECIMAL(10,2), donation_date DATE, program VARCHAR(50)); INSERT INTO donors_ext (id, name, donation_amount, donation_date, program) VALUES (1, 'Alice', 500.00, '2022-02-01', 'Refugee Support'), (2, 'Bob', 300.00, '2022-03-10', 'Disaster Response');
SELECT program, SUM(donation_amount) AS total_donation, ROW_NUMBER() OVER (ORDER BY SUM(donation_amount) DESC) AS donation_rank FROM donors_ext GROUP BY program ORDER BY donation_rank;