more thin logic