initial work for block