first workable version done.