        ops.slice(1).forEach((opitem) => {
            if (opitem.opcode > this.BITBOX.Script.opcodes.OP_16) {
                throw Error("Non-push opcode");
            }
            if (opitem.opcode > this.BITBOX.Script.opcodes.OP_PUSHDATA4) {
                if (opitem.opcode === 80) {
                    throw Error('Non-push opcode');
                }
                if (!allow_op_number) {
                    throw Error('OP_1NEGATE to OP_16 not allowed');
                }
                if (opitem.opcode === this.BITBOX.Script.opcodes.OP_1NEGATE) {
                    opitem.data = Buffer.from([0x81]);
                }
                else { // OP_1 - OP_16
                    opitem.data = Buffer.from([opitem.opcode - 80]);
                }
            }
            if (opitem.opcode === this.BITBOX.Script.opcodes.OP_0 && !allow_op_0) {
                throw Error("OP_0 not allowed");
            }
            chunks.push(opitem.data);
        });
The product receives input or data, but it does
        not validate or incorrectly validates that the input has the
        properties that are required to process the data safely and
        correctly.