Changed properties of delegates from "assign" to "weak" to prevent crashes if delegate gets deleted