makeblock func