improve design. still need improvements. [delivers #60502922]