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: Listar todos os produtos de maquiagem cruelty-free e seus respectivos fabricantes, classificados por preço médio.
 ###Tabelas: 
CREATE TABLE MakeupProducts (ProductID INT, ProductName VARCHAR(50), CrueltyFree BOOLEAN, Price FLOAT); CREATE TABLE Manufacturers (ManufacturerID INT, ManufacturerName VARCHAR(50), Country VARCHAR(50)); INSERT INTO Manufacturers (ManufacturerID, ManufacturerName, Country) VALUES (1, 'Manufacturer X', 'USA'), (2, 'Manufacturer Y', 'France'), (3, 'Manufacturer Z', 'Canada'); INSERT INTO MakeupProducts (ProductID, ProductName, CrueltyFree, Price) VALUES (1, 'Mascara A', TRUE, 14.99), (2, 'Eyeshadow B', FALSE, 24.99), (3, 'Lipstick C', TRUE, 8.99), (4, 'Foundation D', TRUE, 34.99), (5, 'Blush E', FALSE, 19.99);
SELECT ManufacturerName, AVG(Price) as AveragePrice FROM MakeupProducts JOIN Manufacturers ON MakeupProducts.ProductID = Manufacturers.ManufacturerID WHERE CrueltyFree = TRUE GROUP BY ManufacturerName ORDER BY AveragePrice;