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 ingredientes são usados nos produtos que receberam uma violação de segurança no último ano e não são certificados como livres de crueldade?
 ###Tabelas: 
CREATE TABLE products (product_id INT, product_name TEXT, is_cruelty_free BOOLEAN); CREATE TABLE ingredient_sources (ingredient_id INT, product_id INT, source_country TEXT); CREATE TABLE safety_records (record_id INT, product_id INT, violation_date DATE);
SELECT ingredient_sources.ingredient_id FROM ingredient_sources INNER JOIN products ON ingredient_sources.product_id = products.product_id INNER JOIN safety_records ON products.product_id = safety_records.product_id WHERE safety_records.violation_date >= NOW() - INTERVAL '1 year' AND products.is_cruelty_free = FALSE;