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: Quais programas receberam doações do maior número de doadores únicos em 2021?
 ###Tabelas: 
CREATE TABLE Programs (ProgramID INT, ProgramName TEXT, Budget FLOAT); CREATE TABLE DonorPrograms (DonationID INT, ProgramID INT, DonorID INT, DonationDate DATE); INSERT INTO Programs (ProgramID, ProgramName, Budget) VALUES (1, 'Education', 10000.00), (2, 'Health', 15000.00); INSERT INTO DonorPrograms (DonationID, ProgramID, DonorID, DonationDate) VALUES (1, 1, 1, '2021-01-01'), (2, 1, 2, '2021-02-01'), (3, 2, 3, '2021-03-01'), (4, 2, 4, '2021-04-01'), (5, 1, 5, '2021-05-01');
SELECT Programs.ProgramName, COUNT(DISTINCT DonorPrograms.DonorID) as UniqueDonors FROM Programs INNER JOIN DonorPrograms ON Programs.ProgramID = DonorPrograms.ProgramID WHERE YEAR(DonorPrograms.DonationDate) = 2021 GROUP BY Programs.ProgramName ORDER BY UniqueDonors DESC;