Algorithms For Circuit Layout Compaction Of Building Blocks