initial commit (of complette tested version)