its a little hard to understand