https://msanabid.com/posts/self-attention-tutorial/