necessary plots