update mapping and moved device push into for block