several enhacements