3/27final in nmlab

diff merge
may contain several bugs