Published first version. Many validation, null reference issues fixed