finished functions
finished functions