Fix #257
Fix #257.
Fix #258
Fix #259
Fix #259.
Fix #260
Fix #260.
Fix #263
Fix #263.
Fix #264
Fix #264.
Fix #268
Fix #268.
Fix #271.
Fix #272.
Fix #277.
Fix #284.
Refix #284.
Fix #287.