Question: For java.io.InputStream, there are two primary read functions **int read()** and **public int read(byte[] b, int off, int len)** .

Similarly, for java.io.OutputStream there are two functions **write(b) and write((byte[] b, int off, int len))**

While I understand the basic difference, but on reading the description of write(b), it says that it says "The byte to be written is the eight low-order bits of the argument b. The 24 high-order bits of b are ignored.". Now if that's the case, then we are actually wasting the remaining 24 bits out of 32-bit instruction set which CPU would load for an integer. Instead if I use the other write ((byte[] b, int off, int len)), then I am occupying heap/stack for the size of the byte array. While I am trying to think of which one works better for high scalability, I cant ignore that write(b) wastes 24 bits(3 bytes), while on the other hand if I use the read/write(byte[] b, int off, int len), i risk higher stack sizes. So, what is the best option to choose? 

In a workaround, I tried to extend InputStream and OutputStream and override read(b) and write(b) functions by providing a byte[4] to use all the 32 bits. It works just fine, but still have to see if this has any performance enhancements. Its very similar to using read/write(4, 0, int 4)

I will appreciate any help/comment on this topic.

Answer: 
With the [Table Visualizations](https://developers.google.com/chart/interactive/docs/gallery/table) you can control colors a few different ways:

1. use the `cssClassNames` option (see [available options](https://developers.google.com/chart/interactive/docs/gallery/table#Configuration_Options)). This allows you to set your own classes for the various different table elements, which you can then use CSS to style however you like.
2. Set the `style` property of individual cells.
3. Set the `className` property of individual cells.

Using the last two ways, you can set the styling on cells individually if you want to make them different from the default (or different from any custom styling applied using the first method).

There are also some [formatters](https://developers.google.com/chart/interactive/docs/reference#formatters) you can use to adjust the appearance of the cells in a table (the [ColorFormatter](https://developers.google.com/chart/interactive/docs/reference#colorformatter) may help you).
```
function drawSettingsTable() {
    document.settingsData = new google.visualization.DataTable();
    document.settingsData.addColumn('string', 'Setting');
    document.settingsData.addColumn('string', 'Current Value');
    document.settingsData.addColumn('string', 'Meaning');
    document.settingsData.addRows(
                [["          ", "         ", "                  "],
                ["           ", "         ", "                  "],
                ["           ", "         ", "                  "],
                ["           ", "         ", "                  "]
            ]
            );
    document.settingsTable = new google.visualization.Table(document.getElementById('settingsDiv'));
    document.settingsTable.draw(document.settingsData, {
        showRowNumber: false,
        allowHtml: true,
        width: "100%",
        cssClassNames: {headerRow:'columnTitle'}
    });

```

And create the class .columnTitle in your css file with the desired proper tie, for example:

```
.columnTitle {
          font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
          font-size: 14px; 
          color:white;
          background-color: #607A75
      }

```