almost done for CBIT: it is realy complicated part.