implemented first concrete parts of logic