add layout wrap
add layout wrap
add layout map swap func