class_docstr: Lunar Multi-headed attention.
  See "Linformer: Self-Attention with Linear Complexity" for more details.
code: def compute_pcontext(
      self,
      query,
      pquery,
      context: Optional[Tensor],
      context_padding_mask: Optional[Tensor] = None,
      incremental_state: Optional[
          Dict[str, Dict[str, Optional[Tensor]]]
      ] = None,
      static_context: bool = False,
  ) -> Union[Tensor, None]:
      if context is None:
          return context
      else:
          return self._compute_pcontext(
              pquery, context, context_padding_mask
          )
  
imports: import math
  from typing import Dict, Optional, Tuple, Union
  import torch
  import torch.nn.functional
  from fairseq import utils
  from fairseq.incremental_decoding_utils import with_incremental_state
  from fairseq.modules.fairseq_dropout import FairseqDropout
  from torch import nn, Tensor
label_desc: Use image node_id 6 for calling the LunarMultiheadAttention obj's underlying member method code with example usage: obj.compute_pcontext(query, pquery, context, context_padding_mask, incremental_state, static_context) and returns: context, self