this is long but you should watch it