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: Liste os 3 programas mais populares com base na frequência de público no 'Teatro'.
 ###Tabelas: 
CREATE TABLE if not exists program (id INT, name VARCHAR(50)); CREATE TABLE if not exists event_attendees (id INT, program_id INT, name VARCHAR(50)); INSERT INTO program (id, name) VALUES (1, 'Theater 101'), (2, 'Broadway Hits'), (3, 'Shakespeare Plays'); INSERT INTO event_attendees (id, program_id) VALUES (1, 1), (2, 2), (3, 2), (4, 3), (5, 1);
SELECT p.name, COUNT(*) AS attendance FROM program p JOIN event_attendees ea ON p.id = ea.program_id GROUP BY p.name ORDER BY attendance DESC LIMIT 3;