def addSeqTokensArgs(parser):
    """
    Add arguments defining DNN processing sequences of tokens
    Parameters:
    - parser  -- argument parser as an object of ArgumentParser
                 to add arguments
    Returns: constructed argument parser
    """
    parser.add_argument('--seq_len', default=None, type=int,
                        help='maximum lengths of token sequence')
    parser.add_argument("--coding", type=str, default="categorical", 
                        choices=["categorical", "trainable", "one_hot"],
                        help="dnn input data coding: " + 
                        "either one-hot or categorical or trainable")
    parser.add_argument("--embed", default=None, type=int,
                        help="size of embedding vectors; " + 
                        "number of tokens if it is not defined" )
    parser.add_argument("--kernels", required=True,
                        type=int, nargs='+',
                        help="width of convolution kernels")
    parser.add_argument("--filters", required=True,
                        type=int, nargs='+',
                        help="number of convolution filters")
    parser.add_argument("--strides", default = None,
                        type=int, nargs='+',
                        help="strides of convolutions")
    parser.add_argument("--conv_act", type=str, 
                        default= None, choices=["relu", "sigmoid", "tanh"],
                        help="activation of convolutional layers")
    parser.add_argument("--pool", type=str, 
                        default="max", choices=["max", "aver"],
                        help="operation of pooling layer")
    parser.add_argument("--dropout", default=0, type=float,
                        help="rate of dropout")
    return parser