some hard to understand shit