1) What is the main insight/technique in Gentry's work on FHE that keeps the noise low, and prevents the noise from affecting the correctness of the computation result when decrypted? 2) Describe the difference between functional encryption and fully homomorphic encryption. 3) Assuming both of these schemes were efficient (which they are far from being) while supporting general functions, and function evaluation costs the same in both, discuss which one would you deem more fit for computing SQL queries on an encrypted database and why?