finish di part
directive compile basics