constructor(
        x,
        y,
        scope = globalScope,
        data = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    ) {
        super(x, y, scope, 'RIGHT', 1);
        /*
        this.scope['Rom'].push(this);
        */
        this.fixedBitWidth = true;
        this.directionFixed = true;
        this.rectangleObject = false;
        this.setDimensions(80, 50);
        this.memAddr = new Node(-80, 0, 0, this, 4, 'Address');
        this.en = new Node(0, 50, 0, this, 1, 'Enable');
        this.dataOut = new Node(80, 0, 1, this, 8, 'DataOut');
        this.data = data || prompt('Enter data').split(' ').map((lambda) => parseInt(lambda, 16));
    }
@class
Rom
@extends CircuitElement
@param {number} x - x coordinate of element.
@param {number} y - y coordinate of element.
@param {Scope=} scope - Cirucit on which element is drawn
@param {Array=} data - bit width per node.
@category sequential