class layout implemented