first version almost ready except references format