base library structure