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 marcas livres de crueldade têm a maior pontuação média de preferência para produtos de maquiagem?
 ###Tabelas: 
CREATE TABLE Consumer_Preferences (id INT, consumer_id INT, product_id INT, preference_score INT); CREATE TABLE Consumers (id INT, name VARCHAR(255), age INT, location VARCHAR(255), cruelty_free BOOLEAN); CREATE TABLE Products (id INT, name VARCHAR(255), category VARCHAR(255), price DECIMAL(5,2)); CREATE TABLE Brands (id INT, name VARCHAR(255), hq_location VARCHAR(255), cruelty_free BOOLEAN);
SELECT b.name, AVG(cp.preference_score) as average_score FROM Consumer_Preferences cp JOIN Consumers c ON cp.consumer_id = c.id JOIN Products p ON cp.product_id = p.id JOIN Brands b ON p.id = b.id WHERE c.cruelty_free = true AND p.category = 'Makeup' GROUP BY b.name ORDER BY average_score DESC LIMIT 1;