restored from gswat-node branch on gswat