code: def extract_features(
      self,
      prev_output_tokens,
      encoder_out: Optional[Dict[str, List[Tensor]]],
      incremental_state: Optional[
          Dict[str, Dict[str, Optional[Tensor]]]
      ] = None,
      full_context_alignment: bool = False,
      alignment_layer: Optional[int] = None,
      alignment_heads: Optional[int] = None,
  ):
      # call scriptable method from parent class
      x, _ = self.extract_features_scriptable(
          prev_output_tokens,
          encoder_out,
          incremental_state,
          full_context_alignment,
          alignment_layer,
          alignment_heads,
      )
      return x, None
  
imports: import logging
  import math
  from typing import Dict, List, Optional, Tuple
  import torch
  import torch.nn
  import torch.nn.functional
  from torch import Tensor
  from fairseq import checkpoint_utils, utils
  from fairseq.data.data_utils import lengths_to_padding_mask
  from fairseq.models import FairseqEncoder, FairseqEncoderDecoderModel, register_model, register_model_architecture
  from fairseq.models.speech_to_text.modules.convolution import infer_conv_output_dim
  from fairseq.models.transformer import Embedding, TransformerDecoder
  from fairseq.modules import LayerNorm, PositionalEmbedding, TransformerEncoderLayer
label_desc: Use image node_id 1 for calling the TransformerDecoderNoExtra obj's underlying member method code with example usage: obj.extract_features(prev_output_tokens, encoder_out, incremental_state, full_context_alignment, alignment_layer, alignment_heads) and returns: x,  None