I know the block function is right, but something is wrong with other stuff